#INCLUDE "dbc.h"
#DEFINE CRLF CHR(13)+CHR(10)
SET PROCEDURE TO dfo.prg ADDITIVE
LOCAL lcAlias,lcDBC,luValue,lcFile
lcAlias=SYS(2015)
lcDBC=HOME(2)+"\Tastrade\Data\tastrade.dbc"
USE (lcDBC) ALIAS (lcAlias) IN 0
* Read Stored procedures
=DBC_GetSP(lcAlias,_DBC_SP_TSource,@luValue)
* Add new procedure
luValue=luValue+;
[PROCEDURE TestProcedure]+CRLF+;
[ ?time()]+CRLF+;
[ENDPROC]+CRLF
* Save Stored procedures
=DBC_SetSP(lcAlias,_DBC_SP_TSource,@luValue)
* Compile source code
lcFile=SYS(2023)+"\"+SYS(2015)
=STRTOFILE(luValue,lcFile+".prg")
COMPILE (lcFile+".prg")
luValue=FILETOSTR(lcFile+".fxp")
* Save FXP code
=DBC_SetSP(lcAlias,_DBC_SP_TFXP,@luValue)
USE IN (lcAlias)
RELEASE PROCEDURE dfo.prg
* Test
OPEN DATA (lcDBC)
=TestProcedure()
CLOSE DATA