added sysprog entities
This commit is contained in:
@ -0,0 +1,97 @@
|
||||
compile Insert RTI_XBAND_DATASOURCE_DATATABLE_TEMPLATE
|
||||
|
||||
Function {PROCNAME}(UID)
|
||||
/*
|
||||
** Mimic BRW using An SQL stored procedure return a dataset
|
||||
** Build a workging table were oconv, sort is all done "server-side"
|
||||
** So report can just have groups with Break-on, minimal chatter with OI.
|
||||
**
|
||||
** Note: RTI_XBAND_DATASOURCE_TEMPLATE is the basis for the program
|
||||
** RTI_XBAND_GENPROC uses the template to generate the code
|
||||
** RTI_XBAND_SUPPORT calls RTI_XBAND_GENPROC, compiles the source, loads it on stack like rlist
|
||||
**
|
||||
** The BRW, via NetOI / RunDotNet, calls RTI_XBAND_SUPPORT
|
||||
**
|
||||
** 03-27-13 rjc Created
|
||||
** 06-27-18 rjc Support @mv in readnext / read, use onGosub
|
||||
** 07-17-18 rjc Fixes for 10.0.0.3
|
||||
** 12-05-19 rjc Add records_processed for 10.0.8
|
||||
** 01-14-20 rjc use rlist_text_1 for row processed
|
||||
*/
|
||||
|
||||
Declare Function dcount, isEventContext,select_into
|
||||
|
||||
equ OTHERWISE$ to 1
|
||||
equ TRUE$ to 1
|
||||
equ FALSE$ to 0
|
||||
equ YES$ to 1
|
||||
equ NO$ to 0
|
||||
Equ NULL$ to ""
|
||||
Equ tab$ To \09\
|
||||
Equ crlf$ To \0D0A\
|
||||
|
||||
|
||||
$Insert msg_equates
|
||||
$Insert rti_resolve_select_callback_equates
|
||||
|
||||
Declare Function isEventContext,select_Into
|
||||
If Assigned(UID) Else UID = ""
|
||||
RSLT = ""
|
||||
|
||||
Equ logid$ To ""
|
||||
Open 'SYSLISTS' To f_syslists Else null
|
||||
|
||||
If logid$ Then
|
||||
Writev "IN->":uid on f_syslists, logid$,-1 Else null
|
||||
end
|
||||
|
||||
|
||||
Call Set_Status(0)
|
||||
//"ID":@SVM:"FNAME":@svm:"LNAME":@vm:"System.String":@SVM:"System.String":@SVM:"System.String"
|
||||
// bzs remove quote(), force in at_id
|
||||
|
||||
descriptor_names = "{COLHEADS}"
|
||||
descriptor_types = "{COLTYPES}"
|
||||
Descriptor = descriptor_names:@VM:descriptor_types
|
||||
Convert "," To @SVM In descriptor
|
||||
|
||||
* bzs don't join them until the end
|
||||
* rslt = descriptor:@fm:Select_into('{CMD}', 'TABNORMALIZED')
|
||||
wasGuiEnabled = rti_resolve_Select_callback(rtirsc_getGuiEnabled$)
|
||||
If wasGuiEnabled else
|
||||
unused = rti_resolve_Select_callback(rtirsc_EnableGui$)
|
||||
end
|
||||
|
||||
|
||||
rslt = Select_into('{CMD}', 'TABNORMALIZED')
|
||||
|
||||
If wasGuiEnabled else
|
||||
unused = rti_resolve_Select_callback(rtirsc_DisableGui$)
|
||||
end
|
||||
|
||||
* remove trailing crlf$
|
||||
Loop
|
||||
While rslt[-2,2] == crlf$
|
||||
rslt[-2,2] = ""
|
||||
Repeat
|
||||
|
||||
* Switch to @svm for columns,@vm for rows
|
||||
Convert tab$:crlf$ to @svm:@vm In rslt
|
||||
|
||||
* bzs remove "column heading" row
|
||||
rslt = Delete(rslt, 1, 1, 0)
|
||||
|
||||
* bzs join them together now
|
||||
rslt = Descriptor:@FM:rslt
|
||||
|
||||
|
||||
|
||||
If logid$ Then
|
||||
Writev "OUT->":quote(rslt) on f_syslists, logid$,-1 Else null
|
||||
tmp= rslt
|
||||
Convert @svm To tab$ In tmp
|
||||
Swap @vm With crlf$ In tmp
|
||||
OSWrite tmp On 'c:\temp\xb_dataset.txt'
|
||||
end
|
||||
|
||||
Return RSLT
|
Reference in New Issue
Block a user