child pages:
File Formats
File Processing Runs
Record Formats
page index:
Activity History table
ARACTIVITYHIST
Audit table searching
batches - new business batch to see placements after fpr
Cancel an account
debug file setup
Element Types
Enitity Table ARENTITY
Entity Table History ARENHIST
File Locks on Scripts - Removing
killing an infinite loop script
letters
Notes including Relationship Notes,
null strings vs empty strings
Script & Scripting bugs in Artiva
Searching and Users Index use
Statuses
Tables and Fields
Unpromotable Elements
parameter order in PREFACED document I created: | param name | data type | return value | default | optional |
parameter order in workstation: | param name | data type | default | return value | optional |
RM & HCX Schedule History:
System Management -> Night Job Management -> Workstation Schedule Maintenance -> Print Schedule History
RM Job Definitions and schedules:
System Management -> Night Job Management -> Workstation Schedule Maintenance -> Schedule Job Definitions
System Management -> Night Job Management -> Workstation Schedule Maintenance -> Job Scheduler
HCX Job Definitions and schedules:
System Management -> Night Job Management -> Workstation Schedule Maintenance -> Maintain Job Definitions
System Management -> Night Job Management -> Workstation Schedule Maintenance -> Artiva Schedule Manager
-- TAKES 24 SECONDS WITH UNKNOWN ARACTHRELID
-- TAKE 1/4 SECOND WITH KNOWN ARACTHRELID
-- FROM 106858
SELECT ARRELENID,
ARACTHRELID,
ARACTHACCTID,
ARACTHDTE,
ARACTHTIME,
ARACTHRESDISP,
ARACTHRESID,
*
FROM ARACTIVITYHIST
JOIN ARRELATIONSHIP ON ARACTHRELID = ARRELATIONSHIP.ARRELID
WHERE
/*ARACTHRELID IN (57480594, 57480596)
AND */ ARACTHDTE = {d "2024-04-18"}
AND ARACTHTIME = '15:33:47'
and ARACTHRESDISP = 'ACAANSHU (ACA - Answered Hangup)'
AND ARACTHRESID = 'ACAANSHU'
AND ARACTHACTID = "ACA"
ORDER BY ARACTIVITYHIST.ARACTHTIME
-- TAKES
-- FIND ALL STATUSES FOR A GIVEN ARACID BY LOOKING IN AUDIT TABLE
SELECT
STAUDKEY,
STAUDDATE,
STAUDFLDNAME,
STAUDOLDVAL,
ARRELRLCLASSID
FROM STFIELDAUD
JOIN ARRELATIONSHIP on ARRELATIONSHIP.ARRELID = STAUDKEY
WHERE STAUDFLDNAME = "ARRELSTATUSID"
AND STAUDKEY IN
(
SELECT
ARRELID
FROM ARRELATIONSHIP
WHERE
ARRELACID = 30220096
AND
ARRELRLCLASSID in ('ARACCTMGT', 'ARACCTHOLDR')
)
;
--from ticket 105942
SELECT * FROM STFIELDAUD
WHERE
STAUDFLDNAME = "ARENADR"
AND
(
STAUDKEY = 35647887 /* ENTITY ID */
OR
STAUDKEY = 64395298
)
Run -> Run History click Start Date link
General -> Run History Files
General->Email to get new busines [sic] batch id
seach/command "# ess bal" finds " New Business Balance Report."
Help: Account Management > New Business > Balancing New Business Batches > How to Balance a New Business Batch
In the interface, it is more convenient to use Perform Action->S->CANC (as it prompts for Cancel Code = ARCANCID) than ARCANC (which I suspect was delivered).
Note that CANC won't appear in the list of choices if account is already in status INACTCANCEL
fDebugFile As syFile
fDebugPath as chr
fDebugFileName As Chr
set fDebugPath = "\\" ' NO TRAILING BACKSLASH
Set fDebugFileName = fDebugPath _ "\rbdebug_" _ SYNAMESPACE _ "_" _ $$FMTDATE($$TODAY(),"YYYYMMDD",6) _ "_" _$$FMTTIME($$NOW(),"HHMM") _ ".txt"
Call fDebugFile.Append(fDebugFileName)
Call fDebugFile.Write(SYCR_SYLF_ SYCR_SYLF_ SYCR_SYLF_ $$FMTTIME($$NOW(), "HH:MM:SS ") _ "STARTING [SYLBNAME] " _ SYCR_SYLF) 'FOR ARACID <"_ $$FILEPROC.GETKEY("ARACCOUNT")_ ">"_ SYCR_SYLF)
Call fDebugFile.Write($$FMTTIME($$NOW(), "HH:MM:SS ") _ "[message here]" _ SYCR _ SYLF)
table STELEMENT
SELECT
STELCODE
,STELDESC
,*
FROM STELEMENT
-- FIND ALL ACTIVE ACCOUNTS FOR A GIVEN ARENID / ARACRPID / ARRELENID
SELECT
ARACID
, ARACRPID
,ZZACRTNCANCID
,ARRELRLCLASSID
,ARRELPHASE
,ARRELSTATUSID
FROM araccount
JOIN ARRELATIONSHIP on ARRELACID = ARACCOUNT.ARACID
WHERE ARACRPID IN (15221300 , 16456938) /*ARENID AKA ARRELENID*/
AND ARRELRLCLASSID = 'ARACCTHOLDR'
AND NOT (ARRELPHASE = 'INACTIVE')
-- ARENHDTE "History Create Date" IS NOT THE DATE THE ARENHIST RECORD WAS CREATED (IT APPEARS THAT DATE IS NOT STORED)
-- ARENHDTE IS THE DATE THE INFORMATION STORED IN THE RECORD WAS ACQUIRED BY USCB OR SIMILAR
SELECT
ARENHSETID,
ARENHDTE,
ARENHPH,
*
FROM ARENHIST
WHERE
/* -- ARENHACID NOT INDEXED, USE ARENHENID */
ARENHENID IN
(
SELECT ARACRPID
FROM ARACCOUNT
WHERE
ARACID = 42463639
)
;
Studio crashed on me and now when I open the element I was previously working on it will only open as read only. Two Finvi tech support people don't know how to resolve it and are consulting with third Finvi person. Does anyone know if we can fix it ourselves or do we need to have them fix it?
To resolve: Go into the 'users in namespace' menu in Workstation find your process ids that are locks, then go to system status in Cache dashboard, pick the namespace, then terminate those process ids
Alternately, I think if you search Lock Table in Workstation you can find the window lock and remove it that way
~2023-08-10 accidently put the wrong variable name in a while loop and it went into an infinite loop
it was writing data to the hard drive at an alarming rate
I went to the Cache control panel and went to Processes but I couldn't figure out which was mine
Deandre helped me to determine which it was
filter the list by namespace
basically, finding the pid to kill is a process of elimination - rule out workflow stuff, etc
i think i can further narrow it down by searching for the ip address of my vdi
Deandre said it will be the one that has the fastest growing values for database references, etc.
validation letter (e.g. "G01") federally mandated by Consumer Financial Protection Board; bad debt collections letter before collections activities can start
goodbye letter is letter mandated in California by AB1020 to be sent out by a hospital before the validation letter alerting patient or debtor that charity care is sometimes available. This is the hospital's responsibility, but some pay us to do it. Others send us a letter package that we parse in a 3rd gen language that checks (maybe writes to?) the aracdocs table
Revspring is our vendor that does what I think of as the mail merge portion of letter creation. aka "link service". We can't only see the value of the fields that will be inserted in the letter, not the text of the letter itself as that is in Revspring's system and not Artiva
After requesting a letter in an account, search "letter" in workstation-> "Create Letter Batch". Enter "N" in "Batch" and hit tab to autoincrement. Select the letter of interest for "Letter Code" and today for "through date". Table and Letter Form have only one possible value. Save the batch, start the letter batch when prompted and prin the letter batch when prompted. At "select device" choose "file" then "report format" and enter a filename such as c:\temp\somefname where the file will be saved on the development server at ...\C$. The file contains the values that will be inserted in the mail merge.
SELECT
ARRELNOTES,
NOTE_CNT,
NOTE_DATE,
NOTE_TIME,
NOTE_TYPE,
NOTE_USER
FROM ARRELATIONSHIP_ARRELNOTES
JOIN ARRELATIONSHIP ON ARRELATIONSHIP_ARRELNOTES.ARRELID = ARRELATIONSHIP.ARRELID
WHERE ARRELACID = 42463639
ORDER BY NOTE_DATE ASC, NOTE_TIME ASC
' A STRING NEVER ASSIGNED A VALUE AND A STRING ASSIGNED TO "" ARE EQUAL IN ARTIVA
Begin Declare
sTemp As Chr
End Declare
Begin Main
Print "sTemp unassigned"
If (sTemp <> "") Then
Print "not equal is true, would write C"
Else
Print "not equal is false, would not write C"
End If
Set sTemp = "test"
Print "sTemp = test"
If (sTemp <> "") Then
Print "not equal is true, would write C"
Else
Print "not equal is false, would not write C"
End If
Set sTemp = ""
Print "sTemp = empty string"
If (sTemp <> "") Then
Print "not equal is true, would write C"
Else
Print "not equal is false, would not write C"
End If
End Main
2023-03-29 particularly hard to find because the query works in DBeaver but not in Artiva (at least in API we use to send commands from c#):
two c style comments in a row
SELECT TOP 1 ARACID
/* COMMENT 1 */
/* COMMENT 2 */
FROM ARACCOUNT
'ZZRJB105658
Begin Declare
zzQuery As ARSQL 'syQuery syQuery is only to run system queries - use ARSQL if building SQL Statement on the fly
zzsQuery As Chr
zzCurAFClient As Chr
zzClientFinRec As sytabrec.AFCLIENT
zzClientID As Chr
End Declare
Begin Main
Set zzsQuery = "SELECT ARCLID, AFCLINSI, AFCLKEY FROM ARCLIENT "
'MAKE SURE THERE IS AT LEAST ONE SPACE BETWEEN END OF ONE LINE AND START OF NEXT
Set zzsQuery = zzsQuery _ " JOIN ARCLTSET ON ARCLIENT.ARCLSETID = ARCLTSET.ARCLTSID "
Set zzsQuery = zzsQuery _ " JOIN AFCLIENT ON AFCLIENT.AFCLKEY = ARCLIENT.ARCLFINCLTID "
Set zzsQuery = zzsQuery _ " WHERE UPPER(ARCLTMASTERCLID) = 'IDENTIFIER_HERE'"
Call zzQuery.Execute(zzsQuery)
' DETERMINE IF ACCOUNT ID ALREADY IN TABLE AND BAIL IF SO
' DO NOT USE FOR ARSQL -> 'If (Not $$BLANK($$zzQuery.Next()) ) Then ' THIS IS WRONG FOR ARSQL AS .Next never returns BLANK
Call zzQuery.Next()
Set zzCurAFClient = $$zzQuery.Get("AFCLKEY")
Print "zzCurAFClient <" _ zzCurAFClient_ ">"
While (Not $$BLANK(zzCurAFClient))
Set zzClientFinRec.AFCLKEY = zzCurAFClient
Set zzClientFinRec.AFCLINSI = "N"
Call zzClientFinRec.Write()
Set zzClientID = $$zzQuery.Get("ARCLID")
Print zzClientID _ " " _ zzCurAFClient
Call zzQuery.Next()
Set zzCurAFClient = $$zzQuery.Get("AFCLKEY")
End While
End Main
Use ARSQL for query on the fly (as opposed to SYQUERY for one that uses a system query)
Begin Declare
zzQuery As ARSQL 'syQuery syQuery is only to run system queries - use ARSQL if building SQL Statement on the fly
zzsQuery As Chr
zzQueryGetVal As Chr
End Declare
Begin Main
Set zzsQuery = "SELECT ARACID FROM ARACCOUNT WHERE ARACCLACCT= '" _ "THECLIENTREF" _ "'"
Call zzQuery.Execute(zzsQuery)
' DETERMINE IF ACCOUNT ID ALREADY IN TABLE AND BAIL IF SO
' DO NOT USE FOR ARSQL -> 'If (Not $$BLANK($$zzQuery.Next()) ) Then ' THIS IS WRONG FOR ARSQL AS .Next never returns BLANK
Call zzQuery.Next()
Set zzQueryGetVal = $$zzQuery.Get("ARACID")
If (Not $$BLANK(zzQueryGetVal) ) Then
Print "FOUND ACCOUNT"
Print "key is <" _ zzQueryGetVal _ ">"
Else
Print "DID NOT FIND ACCOUNT"
End If
End Main
' generalized from ZZFINDACCOUNT
MyIndex as syIndex.zzMyIndexName
Set MyIndex.ZZACCLTMASTERCLID = "field 1 value"
Set MyIndex.ARACCLACCT = "field 2 value"
Set MyIndex.ARACID = ""
While (Not $$(BLANK($$MyIndex.Next("ARACID"))))
Set AcctRec.ARACID = MyIndex.ARACID
End While
see the audit table example for finding the audited ARRELSTATUSID field
-- tables
SELECT
UFTABLE,
STTABLES.UTDESC AS TABLE_DESCRIPTION,
UFVAR,
UFDESC,
UFTYPE,
UFLEN,
UFKEY,
UFINDEX,
"REST ARE SPLAT",
*
FROM STUFLDS
JOIN STTABLES ON UDTABCD = UFTABLE
WHERE
UFTABLE LIKE "%%"
AND
-- WITH FINDTHIS IN THE FIELD NAME OR DESCRIPTION
UPPER(UFVAR) LIKE "%%"
-- INDEX OR KEY
--AND ((UFINDEX = "Y") OR (UFKEY = "Y"))
ORDER BY STUFLDS.UFTABLE,STUFLDS.UFVAR
incomplete list :
FSLOC | location |
? | file processing runs |
? file processing runs
last updated: Thu 2024-08-08 1:41 PM