COMPILE FUNCTION obj_JCH_Log(Method,Parms)
/*
	Methods for the JCH_Log table
    
	04/9/2013 JCH - Initial Coding
     
    Properties:
     
    Methods:
    
    Extract()						;* Restructures data log records
	
*/


DECLARE FUNCTION Get_Status, Msg, Utility, obj_Tables, NextKey, obj_Prod_Spec
DECLARE SUBROUTINE  Set_Status, Msg, obj_Tables, RList, ErrMsg, Btree.Extract

EQU TAB$		TO \09\
EQU CRLF$		TO \0D0A\

EQU ROUTINE$	TO 1
EQU METHOD$		TO 2
EQU TABLE$		TO 3
EQU WO_NOS$		TO 4
EQU CASS_NOS$	TO 5
EQU LOC_KEY$	TO 6
EQU ACTION$		TO 7
EQU TRANS_DTM$	TO 8
EQU USER_ID$	TO 9
EQU TAGS$		TO 10
EQU TOOL_ID$	TO 11
EQU ERR_MSG$	TO 12
EQU POST_VALS	TO 13
EQU STATION		TO 14
EQU LOG_DTM		TO 15



ErrTitle = 'Error in Stored Procedure "obj_JCH_Log"'
ErrorMsg = ''

IF NOT(ASSIGNED(Method))	THEN ErrorMsg = 'Unassigned parameter "Method" passed to subroutine'
IF NOT(ASSIGNED(Parms))		THEN Parms = ''

IF ErrorMsg NE '' THEN
	Set_Status(-1,ErrTitle:@SVM:ErrorMsg)
	RETURN ''
END

Result = ''

BEGIN CASE
	CASE Method = 'Extract'		; GOSUB Extract
	CASE 1
		ErrorMsg = 'Unknown Method ':QUOTE(Method):' passed to object.'

END CASE

IF ErrorMsg NE '' THEN
	Set_Status(-1,ErrTitle:@SVM:ErrorMsg)
	RETURN ''
END

RETURN Result


* * * * * * *
Extract:
* * * * * * *

LogKey = Parms[1,@RM]
LogRec = Parms[COL2()+1,@RM]
FieldNo	= Parms[COL2()+1,@RM]


IF LogKey = '' THEN RETURN

IF LogRec = '' THEN
	LogRec = XLATE('JCH_LOG',LogKey,'','X')
END

IF LogRec = '' THEN RETURN
Part1 = LogRec<1>
Part2 = LogRec<2>

IF INDEX(Part2<1,1>,@SVM,1) THEN
	TitleMessage = Part2<1,1>
	Parms = Part2<1,2>
	
	CONVERT @SVM TO ' - ' IN TitleMessage
	
	Part2 = TitleMessage:@VM:Parms
END

*DEBUG

*CONVERT @VM:@SVM TO TAB$:@VM IN Part1

LogRec = Part1:TAB$:Part2


IF FieldNo = TRANS_DTM$ THEN
	Result = ICONV(FIELD(LogRec,TAB$,FieldNo),'DT')
END ELSE
	Result = FIELD(LogRec,TAB$,FieldNo)
END

RETURN



