Tmax 4Gl Programming Guide (Power Builder, Delphi, Visual Basic, Visual Basic.net, C#.net) Tmax 3.8 Tmax 4GL Programming Guide
|
|
- 동긴 음
- 6 years ago
- Views:
Transcription
1 Tmax 4GL Programming Guide (Power Builder, Delphi, Visual Basic, Visual Basic.net, C#.net) : TM4P : Tmax 3.8 : July 2, 2003 : Sep 20, 2003
2 Tmax 4Gl Programming Guide (Power Builder, Delphi, Visual Basic, Visual Basic.net, C#.net) Tmax 3.8 Tmax 4GL Programming Guide
3 Copyright (c) 2001 Tmax Soft Co., Ltd. All Rights Reserved.,,, Tmax Soft.,,,..... Tmax, WebT, WebtoB, JEUS, Host-Link, WebInOne Tmax Soft Co., Ltd.. Tmax Tel: , 2006 Fax: Tmax Administration Guide Document Edition Date Version TM4P JUN 21, 2002 Tmax 3.8 Tmax. Tmax Standard. Tmax Standard TP Function + 2 Phase Commit Web Admin Console, X.25 Gateway, TCP/IP Gateway, Host-Link, Power Tmax Options Builder Interface Module, SERIAL Gateway, TCP/IP Service Gateway Tmax 4GL Programming Guide
4 Tmax 4GL Programming GuidePower Builder, Delphi, Visual Basic,.net framework(visual Basic.net, C#.net) 4GL Tmax.,, 4GL Tmax. 4GL Application4GL Tmax.? Tmax 4GL Tmax. Tmax Tmax Reference ManualTmax Programming Guide.? 1. Power Builder : Power Builder Tmax. 2. Visual Basic : Visual Basic Tmax. 3. Delphi : Delphi Tmax. 4. Visual Basic.net : Visual Basic.net Tmax. 5. C#.net : C#.net Tmax. Tmax Reference Manual Tmax FDL Reference Manual Tmax Programming Guide { } [ ] ( ) Numeric String Literal abc abc Tmax 4GL Programming Guide
5 I. Power Builder pb_reset... 9 pb_tpalloc pb_tpstart pb_tmaxreadenv pb_tpend pb_tpcall pb_etpcall pb_tpfcall pb_tpacall pb_tpgetrply pb_tpcancel pb_tpcallw pb_tpconnect pb_tpsend pb_tprecv pb_tpdiscon pb_isblocked pb_tpbroadcast pb_tpsetunsol pb_getunsold pb_tpget pb_tpgetunsol pb_tpput f_data f_datadel f_fdata f_fdatadel f_form f_getdata pb_tx_begin pb_tx_commit pb_tx_rollback pb_tx_info pb_tx_set_commit_return pb_tx_set_transaction_control pb_tx_set_transaction_timeout tp_init tuxreadenv tp_term tp_call Tmax 4GL Programming Guide
6 tp_fcall tp_acall tp_getrply tp_cancel tuxcall tp_connect tp_conv tp_send tp_recv tp_discon isblocked tp_broadcast tp_subscribe tp_unsubscribe tp_begin tp_commit tp_abort Power Builder Sample II. Visual Basic PUTINT PUTLONG PUTFLOAT PUTDOUBLE PUTVAR PUTCAR_BA PUTSTR PUTCHR PUTCAR GETINT GETLONG GETFLOAT GETDOUBLE GETVAR GETCAR_BA GETSTR GETCHR GETCAR TmaxError FdlErrorMsg FilltpstartBuf Visual Basic Sample III. Delphi Tmax 4GL Programming Guide
7 2. Delphi Sample IV. Visual Basic.net ErrorMsg FdlErrorMsg PUTINT PUTLONG PUTDOUBLE PUTFLOAT PUTSHORT PUTCAR PUTVAR PUTCHR PUTCAR PUTCAR GETINT GETLONG GETDOUBLE GETFLOAT GETSHORT GETCAR GETVAR GETCHR GETCAR GETCAR FilltpstartBuf Visual Basic.NET Sample V. C#.net C#.NET Sample Tmax 4GL Programming Guide
8 I. Power Builder Tmax 4GL Programming Guide
9 1. Tmax. (tmax.pbd).. -.,. tmax.pbd. tmax.pbd. Tmax 4GL Programming Guide
10 2. pb_reset long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax uo_tmax.usr_name = 'tmaxclient' uo_tmax.clt_name = 'cilent01' uo_tmax.dom_pwd = 'tmax' uo_tmax.usr_pwd = 'client01' uo_tmax.flags = uo_tmax.tpunsol_ign ret = uo_tmax.pb_tpstart() if ret < 0 then error processing end if Tmax 4GL Programming Guide
11 pb_tpalloc svcname : itype : ) STRUCT, STRING, CARRAY, FIELD isubtype : ilen : size ( : 1024) long ret Tmax 4GL Programming Guide
12 long buf u_tmax uo_tmax uo_tmax = CREATE u_tmax uo_tmax.usr_name = 'tmaxclient' uo_tmax.clt_name = 'cilent01' uo_tmax.dom_pwd = 'tmax' uo_tmax.usr_pwd = 'client01' uo_tmax.flags = uo_tmax.tpunsol_ign ret = uo_tmax.pb_tpstart() if ret < 0 then error processing end if Tmax 4GL Programming Guide
13 tpbegin long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax uo_tmax.usr_name = 'tmaxclient' uo_tmax.clt_name = 'cilent01' uo_tmax.dom_pwd = 'tmax' uo_tmax.usr_pwd = 'client01' uo_tmax.flags = uo_tmax.tpunsol_ign ret = uo_tmax.pb_tpstart() if ret < 0 then error processing end if uo_tmax.pb_tpbegin Tmax 4GL Programming Guide
14 pb_tpstart pb_tpstart() returns integer Tmax Tmax. IP (TMAX_ HOST_ADDR), (TMAX_HOST_PORT), SDLFILE, FIELD(FDL) FDLFILE. < > 1. dos autoexec.bat. : SET TMAX_HOST_ADDR= SET TMAX_HOST_PORT=8888 SET SDLFILE=C:\tmax\sdl\tmax.sdl SET FDLFILE=C:\tmax\fdl\tmax.fdl 2. unix(ksh).profile. : export TMAX_HOST_ADDR= export TMAX_HOST_PORT=8888 export SDLFILE=C:\tmax\sdl\tmax.sdl export FDLFILE=C:\tmax\fdl\tmax.fdl IP FIELD IP FIELD pb_tpstart() u_tmaxinstance. usr_name clt_name dom_pwd usr_pwd flags TPUNSOL_IGN TPUNSOL_POLL (pb_tpgetunsol() TPUNSOL_HND (pb_tpsetunsol(), pb_getunsold() long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax uo_tmax.usr_name = 'tmaxclient' uo_tmax.clt_name = 'cilent01' uo_tmax.dom_pwd = 'tmax' uo_tmax.usr_pwd = 'client01' uo_tmax.flags = uo_tmax.tpunsol_ign Tmax 4GL Programming Guide
15 ret = uo_tmax.pb_tpstart() if ret < 0 then error processing end if Integer. -1 tperrnoerror. Tmax Reference Manualtpstart(). Tmax 4GL Programming Guide
16 pb_tmaxreadenv pb_tmaxreadenv(string env_file, string section) returns integer long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax ret = uo_tmax.pb_tmaxreadenv(./tmax.env, "TMAX") if ret < 0 then error processing end if Tmax 4GL Programming Guide
17 Integer. -1 tperrnoerror. Tmax Reference Manualtmaxreadenv(). Tmax 4GL Programming Guide
18 pb_tpend pb_tpend() returns integer long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax ret = uo_tmax.pb_tpend() if ret < 0 then error processing end if Integer. -1 tperrnoerror. Tmax Reference Manualtpend(). Tmax 4GL Programming Guide
19 pb_tpcall pb_tpcall(string svcname, string itype, string idata, string from[], ref string odata[]) returns integer. idata svcname. form columndataodata. svcname : itype : TAB( ~t ) NewLine( ~n ) ) - STRUCT itype = STRUCT~tstruct_name~n - STRING itype = STRING~t~n - FIELD KEY itype = FIELD~t~n idata : TAB NewLine form : odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB, RowNewLine. TmaxInstance flagstimeout. msg : message tperrno : tpurcode : User Code(tpreturn ) flags : pb_tpcall flag TPNOTRAN non transaction mode Tmax 4GL Programming Guide
20 TPNOCHANGE TPNOBLOCK non Blocking Mode TPNOTIME Blocking timeout timeout : pb_tx_set_transaction_timeout Blocking timeout - STRUCT string itype, input, form[], output[] int ret itype = "STRUCT~t" + "kstrdata~n" input = string(len(before.text)) + ~t + before.text + ~n form[1] = "len" + ~n + & "sdata" + ~n + & ~n form[2] = ~n output[1] = space(1024) uo_tmax.flags = uo_tmax.tpnochange uo_tmax.timeout = 50 ret = uo_tmax.pb_tpcall("sync", itype, input, form, output) if ret < 0 then messagebox( "ERROR","tpcall Failed : Error Code =" + string(uo_tmax.tperrno) ) return end if afterlen.text = uo_tmax.f_getdata(form[1], output[1], 1, "len") afterdata.text = uo_tmax.f_getdata(form[1], output[1], 1, "sdata") - FIELD KEY long ret string itype, input, form[], output[] if isnull(sle_1.text) or sle_1.text = '' then end if itype = "FIELD~t~n" input = "INPUT~t" + sle_1.text + "~n" form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(40) ret = uo_tmax.pb_tpcall("fdltoupper", itype, input, form[], output[]) Tmax 4GL Programming Guide
21 if ret < 0 then error processing end if Tmax Reference Manual tpcall(). pb_tpacall, pb_tpgetrply Tmax 4GL Programming Guide
22 pb_etpcall pb_etpcall(string svcname, string itype, string idata, string from[], ref string odata[]) returns integer pb_tpcall pb_tpcall. FILENAM, NEWFILE. TP_BITMAP CARRAY. FILENAM input ( 4M ) TP_BITMAP. NEWFILE idata. TP_BITMAP NEWFILE. NEWFILE. svcname : itype : TAB( ~t ) NewLine( ~n ) idata : TAB NewLine ) - input = "FILENAM~t" + FileName + "~n" - input = "NEWFILE~t" + FileName + "~n" form : odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB Tmax 4GL Programming Guide
23 , RowNewLine. TmaxInstance flagstimeout. msg : message tperrno : tpurcode : User Code(tpreturn ) flags : pb_tpcall flag TPNOTRAN non transaction mode TPNOCHANGE TPNOBLOCK non Blocking Mode TPNOTIME Blocking timeout timeout : pb_tx_set_transaction_timeout Transaction Time- Out long ret string itype, idata, form[], odata[] string FileName = "c:\abc.bmp" if isnull(sle_1.text) or sle_1.text = '' then error processing end if itype = "FML~t~n" /*FILEupload FILENAM.*/ idata = "FILENAM~t + FileName + ~n form[1] = "~n" odata[1] = space(1024) ret = uo_tmax.pb_etpcall("imgsave", itype, idata, form[], odata[]) if ret < 0 then error processing end if Tmax 4GL Programming Guide
24 pb_tpfcall pb_tpfcall ( string svcname, string itype, string idata, string form[], ref string odata[], string ifilename, string fform[], ref string fodata[] ) returns integer pb_tpcall(). Tmax FILED form output fform fodata. TAB( ~t ) NewLine( ~n ) TAB NewLine odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. PowerBuilderImportString DataWindow TAB, RowNewLine. TAB NewLine FIELD_NAME1+ ~t + VALUE1+ ~n + & FIELD_NAME2+ ~t + VALUE2+ ~n + & ~n fodata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. Tmax 4GL Programming Guide
25 ... InputFile = c:\temp\fdata0.txt InputFile = FileOpen(InputFile, StreamMode!, Write!, LockReadWrite!, Replace!)... uo_tmax.f_fdata(dw_input, InputFile) if FileClose(InputFile) <> 1 then error processing end if... ret = uo_tmax.pb_tpfcall( FCALL, itype, input, form, output, inputfilename, fform, foutput) if ret = -1 then error processing end if... f_fdata Tmax 4GL Programming Guide
26 pb_tpacall pb_tpacall ( string svcname, string itype, string idata ) returns integer,. (pb_tpgetrply())pb_tpacall(). pb_tpacall(). pb_tpgetrply(). TAB( ~t ) NewLine( ~n ) TAB NewLine string input, itype, form[], output[] int length, cd, ret length = len(before.text) itype = "STRUCT~tkstrdata~n" input = string(length) + ~t + before.text + ~n form[1] = "len~n" + "sdata~n" + ~n form[2] = ~n output[1] = space(1024) cd = uo_tmax.pb_tpacall("sync", itype, input) if cd < 0 then error processing end if ret = uo_tmax.pb_tpgetrply(cd, form, output) if ret < 0 then error processing end if (pb_tpgetrply() ). Tmax 4GL Programming Guide
27 pb_tpgetrply, pb_tpcancel, pb_tpcall Tmax 4GL Programming Guide
28 pb_tpgetrply pb_tpgetrply ( integer cd, ref string form[], ref string odata[] ) returns integer pb_tpgetrply()pb_tpacall(). pb_tpgetrply().. tperrnotpetime. cdpb_tpacall(),. form outputpb_tpcall(). pb_tpacall(). form : odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB, RowNewLine. string input, itype, form[], output[] int length, cd, ret length = len(before.text) itype = "STRUCT~tkstrdata~n" input = string(length) + ~t + before.text + ~n form[1] = "len~n" + "sdata~n" + ~n form[2] = ~n output[1] = space(1024) cd = uo_tmax.pb_tpacall("sync", itype, input) if cd < 0 then error processing end if ret = uo_tmax.pb_tpgetrply(cd, form, output) if ret < 0 then error processing Tmax 4GL Programming Guide
29 end if Integer. -1 tperrnoerror, msg. Tmax Reference Manual tpgetrply(). f_form, pb_tpacall, pb_tpcancel, pb_tpcall Tmax 4GL Programming Guide
30 pb_tpcancel pb_tpcancel ( integer cd ) returns integer pb_tpcancel()pb_tpacall().. cd. commit rollback. pb_tpacall() string input, itype, form[], output[] int length, cd, ret length = len(before.text) itype = "STRUCT~tkstrdata~n" input = string(length) + ~t + before.text + ~n form[1] = "len~n" + "sdata~n" + ~n form[2] = ~n output[1] = space(1024) cd = uo_tmax.pb_tpacall("sync", itype, input) if cd < 0 then error processing end if ret = uo_tmax.pb_tpcancel(cd) if ret < 0 then error processing end if Integer. -1 tperrnoerror, msg. Tmax Reference Manual tpcancel(). pb_tpacall, pb_tpgetrply Tmax 4GL Programming Guide
31 pb_tpcallw pb_tpcallw ( string svcname, powerobject iobject[], powerobject oobject[] ) returns integer iobject PowerObject Service, oobject PowerObject. iobject PowerObject oobject Power Object FIELD. input Object : Control Control.tag FIELD Field. DataWindow, DataWindowChild, : column FIELD FIELD. Row data. DataStore SingleLineEdit, MultiLineEdit : Control.Tag FIELD Field. Control.Textdata. StaticText, EditMask : Control.Tag FIELD Field. Control.Textdata. ListBox Control.Tag FIELD Field. data. DropDownListBox Control.Tag FIELD Field. data. CheckBox Control.Tag FIELD Field. Check data. RadioButton Control.Tag FIELD Field. Check data. outputobject input. ListBoxDropDownListBox data. uo_tmaxinstance Append TRUE, output DataWindow, DataWindow. FALSE DelBuf TRUE, inputdatawindow, DataWindow Delete Buffer (Primary Buffer ). Tmax 4GL Programming Guide
32 TRUE DataOnFail TRUE,. FALSE AppData pb_tpcall() input. DateFmt, Date/Time/DateTime, String TimeFmt, Format. DateTimeFmt pb_tpcallw pb_tpcall, pb_tpcall. long ret windowobject indata[], outdata[] indata[1] = dw_1 indata[2] = sle_input outdata[1] = dw_2 uo_tmax.flags = 0; ret = uo_tmax.pb_tpcallw ("SVC1", indata, outdata) if ret < 0 then error processing end if pb_tpcall, tuxcall Tmax 4GL Programming Guide
33 pb_tpconnect pb_tpconnect ( string svcname, string itype, string idata, long arg_flag ) returns integer pb_tpconnect(). pb_tpsend(), pb_tprecv(). Tmax Reference Manualtpconnect(). TAB( ~t ) NewLine( ~n ) TAB NewLine. TPNOTRAN : pb_tpconnect() svc, svc. svc, pb_tpconnect() TPNOTRAN. pb_tpconnect(), TPNOTRAN (timeout). TPNOTRAN,. TPSENDONLY :,,.,. TPSENDONLY TPRECVONLY. TPRECVONLY :,,.,. TPSENDONLY TPRECVONLY. Tmax 4GL Programming Guide
34 TPNOTIME : TPNOTIME. pb_tpconnect() Blocking timeout. TPSIGSTRT : (signal)..,, tperrno TPGOTSIG. int ret, cd string itype, otype, idata, form[], odata[] itype = "STRING~t~n" otype = "STRING~t~n" idata = string(len(before.text)) + ~t + before.text + ~n odata[1] = space(1024) cd = uo_tmax.pb_tpconnect("conv", itype, idata, uo_tmax.tprecvonly) if cd < 0 then error processing end if ret = uo_tmax.pb_tprecv(cd, form, odata, uo_tmax.tpflags) if ret < 0 then if uo_tmax.revent <> uo_tmax.tpev_sendonly or & uo_tmax.revent = uo_tmax.tpev_svcsucc then error processing end if end if Integer. -1 tperrnoerror.. Tmax Reference Manualtpconnect(). pb_tpsend, tp_tprecv, pb_tpdiscon Tmax 4GL Programming Guide
35 pb_tpsend pb_tpsend ( integer cd, string itype, string idata, long arg_flag ) returns integer pb_tpsend().. Tmax Reference Manualtpsend(). pb_tpconnect() TAB( ~t ) NewLine( ~n ) TAB NewLine. TPRECVONLY : TPRECVONLY,., pb_tpsend(). pb_tprecv(), TPEV_SENDONLY. pb_tprecv(). TPNOBLOCK : (, ). TPNOBLOCK pb_tpsend(), ( ). TPNOTIME : TPNOTIME. pb_tpconnect(). Tmax 4GL Programming Guide
36 TPSIGSTRT : (signal)..,, tperrno TPGOTSIG. int ret, cd string itype, otype, idata, form[], odata[] itype = "STRING~t~n" otype = "STRING~t~n" idata = string(len(before.text)) + ~t + before.text + ~n odata[1] = space(1024) cd = uo_tmax.pb_tpconnect("conv", itype, idata, uo_tmax.tpsendonly) if cd < 0 then error processing end if ret = uo_tmax.pb_tpsend(cd, itype, idata, uo_tmax.tprecvonly) if ret < 0 then error processing endif,. -1,. tperrnopb_tpeevent( 22) revent pb_tpdiscon().. TPFAILtpreturn. reventpb_tpev_svcsucc, PB_TPEV_SVCFAIL tpurcoode. -1 tperrnoerror (PB_TPEEVENT Tmax 4GL Programming Guide
37 ). Tmax Reference Manualtpsend(). pb_tpconnect, tp_tprecv, pb_tpdiscon Tmax 4GL Programming Guide
38 pb_tprecv pb_tprecv ( integer cd, ref string form[], ref string odata[], long arg_flag ) returns integer pb_tprecv().. Tmax Reference Manualtprecv(). pb_tpconnect() odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. PowerBuilderImportString DataWindow TAB, RowNewLine.. TPNOBLOCK :., return.. TPNOTIME :. pb_tprecv() Blocking timeout. TPSIGRSTRT : (signal)..,, tperrno TPGOTSIG. int ret, cd string itype, otype, idata, form[], odata[] itype = "STRING~t~n" otype = "STRING~t~n" Tmax 4GL Programming Guide
39 idata = string(len(before.text)) + ~t + before.text + ~n odata[1] = space(1024) cd = uo_tmax.pb_tpconnect("conv", itype, idata, uo_tmax.tpsendonly) if cd < 0 then error processing end if ret = uo_tmax.pb_tprecv(cd, form, odata, uo_tmax.tpnoflags) if ret < 0 then if uo_tmax.revent <> uo_tmax.tpev_sendonly or & uo_tmax.revent = uo_tmax.tpev_svcsucc then error processing end if end if,. -1,. tperrnopb_tpeevent( 22) revent pb_tpdiscon()... TPFAILtpreturn SUCCESS ( ) reventpb_tpev_svcsucc, PB_TPEV_SVCFAIL tpurcoode. -1 tperrnoerror (PB_TPEEVENT ). Tmax Reference Manualtprecv(). Tmax 4GL Programming Guide
40 pb_tpconnect, tp_tprecv, pb_tpdiscon Tmax 4GL Programming Guide
41 pb_tpdiscon pb_tpdiscon ( integer cd ) returns integer pb_tpdiscon(), TPEV_DISCONIMM.. Tmax Reference Manualtpdiscon(). pb_tpconnect() int ret, cd string itype, otype, idata, form[], odata[] itype = "STRING~t~n" otype = "STRING~t~n" idata = string(len(before.text)) + ~t + before.text + ~n odata[1] = space(1024) cd = uo_tmax.pb_tpconnect("conv", itype, idata, uo_tmax.tpsendonly) if cd < 0 then error processing end if ret = uo_tmax.pb_tpdiscon(cd) if ret < 0 then error processing end if Integer. -1 tperrnoerror. Tmax Reference Manualtpdiscon(). pb_tpconnect, tp_tpsend, pb_tprecv Tmax 4GL Programming Guide
42 pb_isblocked pb_isblocked ( ) returns integer Blocking. Blocking Service. Service Service. Service button ( button ) Service. Service button. ret = uo_tmax.pb_isblocked() if ret = 0 then MessageBox("pb_isBlocked", "NO BLOCK " + string(uo_tmax.tperrno)) else MessageBox("pb_isBlocked", "BLOCKING") end if Integer. Blocking 1return. IsBlocked Tmax 4GL Programming Guide
43 pb_tpbroadcast pb_tpbroadcast ( string nodename, string usrname, string cltname, string data ) returns integer Client Message. nodename : Message. usrname : Message. pb_tpstart() usrname Message. cltname : Message. pb_tpstart() cltname Message. idata : TAB NewLine nodename, usrname, cltname. (wildcards). usrnamecltname?* nodename *. NULL,. Tmax Reference Manualtpbroadcast(). string nodename, usrname, cltname, data int ret. nodename = tmax usrname = * cltname = * data = sle_input.text ret = uo_tmax.pb_tpbroadcast(nodename, usrname, cltname, data) if ret < 0 then error processing end if Tmax Reference Manualtpbroadcast(). Tmax 4GL Programming Guide
44 - Tmax 4GL Programming Guide
45 pb_tpsetunsol pb_tpsetunsol ( unsignedinteger hwnd, string ename, unsignedinteger mid, long arg_flags ) returns integer. pb_getunsold(). hwnd : ename : tppost. mid : arg_flags :. TPBROADCAST, TPSENDTOCLI. pb_tpsetunsol(), pb_getunsold() u_tmaxinstance flagstpunsol_hndpb_tpstart(). uo_tmax.flags = uo_tmax.tpunsol_hnd ret = uo_tmax.pb_tpsetunsol ( HANDLE(this),, 1025, uo_tmax.tpbroadcast ) if ret = -1 then error processing end if unsoldata = space(1024) ret = uo_tmax.pb_getunsold(unsoldata, rlen, 1025) if ret < 0 then error processing end if TPEINVAL :. (16). pb_getunsold Tmax 4GL Programming Guide
46 pb_getunsold pb_getunsold ( ref string odata, integer len, unsignedinteger mid ) returns integer pb_tpsetunsol() pb_getunsold() odata :. len : mid : pb_tpsetunsol(), pb_getunsold() u_tmaxinstance flagstpunsol_hndpb_tpstart(). uo_tmax.flags = uo_tmax.tpunsol_hnd ret = uo_tmax.pb_tpsetunsol ( HANDLE(this),, 1025, uo_tmax.tpbroadcast ) if ret = -1 then error processing end if unsoldata = space(1024) ret = uo_tmax.pb_getunsold(unsoldata, rlen, 1025) if ret < 0 then error processing end if TPEINVAL : rcvbufnull mid 0. TPEITYPE :. TPEOTYPE :. TPEMATCH : mid. Tmax 4GL Programming Guide
47 pb_tpsetunsol Tmax 4GL Programming Guide
48 pb_tpget argument argument argumentsize. char * long addresspb.dll pb.dll string argument input. buf : long. loc : pb.dll loc. size :. TPEINVAL : rcvbufnull mid 0. TPEITYPE TPEOTYPE TPEMATCH pb_tpput Tmax 4GL Programming Guide
49 pb_tpgetunsol pb_tpgetunsol ( integer types, string form[], ref string odata[], integer arg_flags ) returns integer. pb_tpsetunsol() blocking. Tmax Reference Manualtpgetunsol(). types :. TPBROADCAST, TPSENDTOCLI. form : form. odata :. arg_flags : TPBLOCK pb_tpgetunsol(). TPNOTIME pb_tpgetunsol(). string form[], tmp[] tmp[1] = space(30) ret = uo_tmax.pb_tpgetunsol(uo_tmax.tpbroadcast, form[], tmp[], uo_tmax.tpblock) if ret < 0 then error processing end if TPEINVAL : rcvbufnull mid 0. TPEITYPE TPEOTYPE TPEMATCH pb_tpsetunsol, pb_getunsold Tmax 4GL Programming Guide
50 pb_tpput argument argument argument size. buf : long. loc :. size :. TPEINVAL : rcvbufnull mid 0. TPEITYPE TPEOTYPE TPEMATCH pb_tpget Tmax 4GL Programming Guide
51 f_data f_data ( {DataWindow DataWindowChild Datastore} ds_in ) returns string data. DataWindow( DataWindowChild, DataStore) Column datatab( ~t ), Column -Data NewLine( ~n ). Stringpb_tpcall input. ds_in : PowerBuilder Object (DataWindow, DataWindowChild, DataStore ) DataWindow( DataWindowChild, DataStore)data Row. string itype, input, form[], output[] itype = "STRING~t~n" input = uo_tmax.f_data(dw_input) + & ~n ret = uo_tmax.pb_tpcall("toupper", itype, input, form[], output[]) if ret < 0 then error processing end if String. DataWindow( DataWindowChild, DataStore) column data TAB( ~t )NewLine( ~n ). f_datadel, f_fdatadel, pb_tpcall, pb_tpacall, pb_tpconnect Tmax 4GL Programming Guide
52 f_datadel f_datadel ( {DataWindow DataWindowChild Datastore} ds_in ) returns string data. DataWindow( DataWindowChild, DataStore) Column datatab( ~t ), Column -Data NewLine( ~n ). Stringpb_tpcall input. ds_in : PowerBuilder Object (DataWindow, DataWindowChild, DataStore ) DeleteRow DeletedBufferdata : 1. DataWindow Allow Update ( Rows Menu Update Properties... Menu ) check. 2. ImportString ResetUpdate DeleteRow DeleteBuffer Row. string itype, input, form[], output[] itype = "STRING~t~n" input = uo_tmax.f_datadel(dw_input) + & ~n ret = uo_tmax.pb_tpcall("toupper", itype, input, form[], output[]) if ret < 0 then error processing end if String. DataWindow( DataWindowChild, DataStore)DeletedBuffer data TAB( ~t )NewLine( ~n ). f_fdata, f_fdatadel, pb_tpcall, pb_tpacall, pb_tpconnect Tmax 4GL Programming Guide
53 f_fdata f_fdata ( {Datastore DataWindow DataWindowChild} ds_in, integer filehandle ) returns integer Data. DataWindow( DataWindowChild, DataStore) RowColumn dataf_data format File Handle write., Column datatab( ~t ), Column -Data NewLine( ~n ). ds_in : PowerBuilder Object (DataWindow, DataWindowChild, DataStore ) filehandle : Service Data Field pb_tpfcall 4. DataWindow( DataWindowChild, DataStore)data Row.... InputFile = c:\temp\fdata0.txt InputFile = FileOpen(InputFile, StreamMode!, Write!, LockReadWrite!, Replace!)... uo_tmax.f_fdata(dw_input, InputFile) if FileClose(InputFile) <> 1 then error processing end if... if uo_tmax.tp_fcall(input, form, output, inputfilename, fform, foutput) = -1 then error processing end if... Integer File. f_data, f_datadel, f_fdatadel Tmax 4GL Programming Guide
54 f_fdatadel f_fdatadel ( {Datastore DataWindow DataWindowChild} ds_in, integer filehandle ) returns integer Data. DataWindow( DataWindowChild, DataStore) RowColumn dataf_data format File Handle write. ds_in : PowerBuilder Object (DataWindow, DataWindowChild, DataStore ) filehandle : DeleteRow DeletedBufferdata : 1. DataWindow Allow Update ( Rows Menu UpdateProperties... Menu ) check. 2. ImportString ResetUpdate DeleteRow DeleteBuffer Row. DataWindow( DataWindowChild, DataStore)dataDelete Buffer Row. f_fdata. - Integer File. f_data, f_datadel, f_fdata Tmax 4GL Programming Guide
55 f_form f_form ( {Datastore DataWindow DataWindowChild} ds_in) returns string form. DataWindow( DataWindowChild, DataStore) Column pb_tpcall4 String., column NewLine( ~n ) NewLine( ~n ). ds_in : PowerBuilder Object (DataWindow, DataWindowChild, DataStore ) string itype, input, form[], output[] itype = "STRING~t~n" input = uo_tmax.f_data(dw_input) + & ~n form[1] = uo_tmax.f_form(dw_input) ret = uo_tmax.pb_tpcall("toupper", itype, input, form[], output[]) if ret < 0 then error processing end if string. DataWindow(DataWindowChild, DataStore)Column NewLine( ~n ). pb_tpcall, pb_tpgetrply, pb_tprecv, pb_tpconv Tmax 4GL Programming Guide
56 f_getdata f_getdata ( string form, string odata, integer arg_row, string arg_col_name ) returns string form outputarg_row arg_col_name return. form : odata STRUCT FIELD KEY Field., Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB, RowNewLine. arg_row : arg_col_name : string itype, input, form[], output[] itype = "STRING~t~n" input = uo_tmax.f_data(dw_input) + & ~n form[1] = uo_tmax.f_form(dw_input) ret = uo_tmax.pb_tpcall("toupper", itype, input, form[], output[]) if ret < 0 then error processing end if string.. - Tmax 4GL Programming Guide
57 pb_tx_begin pb_tx_begin ( ) returns integer., pb_tx_commit() pb_tx_rollback(). if _is_tx <> true then ret = uo_tmax.pb_tx_begin() if ret < 0 then error processing end if _is_tx = true end If Tmax Reference Manualtx_begin(). pb_tx_commit, pb_tx_rollback Tmax 4GL Programming Guide
58 pb_tx_commit pb_tx_commit ( ) returns integer commit. if _is_tx <> true then end if ret = uo_tmax.pb_tx_commit() if ret < 0 then error processing end If _is_tx = false Tmax Reference Manualtx_commit(). pb_tx_begin, pb_tx_rollback Tmax 4GL Programming Guide
59 pb_tx_rollback pb_tx_rollback ( ) returns integer rollback. ret = uo_tmax.pb_tpcall("insert", itype, input, form[], output[]) if ret < 0 then if _is_tx = true then ret = uo_tmax.pb_tx_rollback() if ret < 0 then error processing end if _is_tx = false end if error processing end if Tmax Reference Manualtx_rollback(). pb_tx_begin, pb_tx_commit Tmax 4GL Programming Guide
60 pb_tx_info pb_tx_info ( ) returns integer. xid u_tmaxdata, when_return, transaction_control, transaction_timeout transaction_stat. if _is_tx <> true then ret = uo_tmax.pb_tx_begin() if ret < 0 then error processing end if _is_tx = true end If if ret = uo_tmax.pb_tx_info() if ret < 0 then error processing end if Transaction mode 1 0. tperrnoerror. 1 TmaxInstance. data : ( :CLH :.) when_return : commit_return (pb_tx_set_commit_return() ) transaction_control : transaction control (pb_tx_set_transaction_control().) transaction_timeout : (pb_tx_set_transaction_timeout().) transaction_stat : Tmax Reference Manualtx_info(). pb_tx_begin, pb_tx_commit, pb_tx_rollback Tmax 4GL Programming Guide
61 pb_tx_set_commit_return pb_tx_set_commit_return ( long w_return ) returns integer when_return Global Transactioncommit. w_return :. TX_COMMIT_DECISION_LOGGED flagpb_tx_commit() two-phase commit protocol return.. TX_COMMIT_COMPLETED flagpb_tx_commit() two-phase commit protocol return. if ret = uo_tmax.pb_tx_set_commit_return(uo_tmax.tx_commit_completed) if ret < 0 then error processing end if if _is_tx <> true then ret = uo_tmax.pb_tx_begin() if ret < 0 then error processing end if _is_tx = true end If Tmax Reference Manualtx_set_commit_return(). pb_tx_info Tmax 4GL Programming Guide
62 pb_tx_set_transaction_control pb_tx_set_transaction_control ( long control ) returns integer control pb_tx_commit() pb_tx_rollback() transaction. control TX_UNCHAINED. control :. TX_UNCHAINED transaction. pb_tx_begin() transaction. TX_CHAINED pb_tx_commit() pb_tx_rollback() transaction. if ret = uo_tmax.pb_tx_set_transaction_control(uo_tmax.tx_chained) if ret < 0 then error processing end if if _is_tx <> true then ret = uo_tmax.pb_tx_begin() if ret < 0 then error processing end if _is_tx = true end If Tmax Reference Manual tx_set_transaction_control(). pb_tx_info Tmax 4GL Programming Guide
63 pb_tx_set_transaction_timeout pb_tx_set_transaction_timeout ( long timeout ) returns integer transactiontimeout. timeout :. if ret = uo_tmax.pb_tx_set_transaction_timeout(5) if ret < 0 then error processing end if if _is_tx <> true then ret = uo_tmax.pb_tx_begin() if ret < 0 then error processing end if _is_tx = true end If Tmax Reference Manual tx_set_transaction_timeout(). pb_tx_info Tmax 4GL Programming Guide
64 tp_init tp_init ( ) returns integer Tmax. pb_tpstart(). long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax uo_tmax.usr_name = 'tmaxclient' uo_tmax.clt_name = 'cilent01' uo_tmax.dom_pwd = 'tmax' uo_tmax.usr_pwd = 'client01' uo_tmax.flags = uo_tmax.tpunsol_ign ret = uo_tmax.tp_initt() if ret < 0 then error processing end if pb_tpstart Tmax 4GL Programming Guide
65 tuxreadenv tuxreadenv ( string env_file, string section ) returns integer long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax ret = uo_tmax.tuxreadenv(./tmax.env, "TMAX") if ret < 0 then error processing end if Integer. -1 tperrnoerror. Tmax 4GL Programming Guide
66 tp_term tp_term ( ) returns integer long ret u_tmax uo_tmax uo_tmax = CREATE u_tmax ret = uo_tmax.tp_term() if ret < 0 then error processing end if Integer. -1 tperrnoerror. Tmax 4GL Programming Guide
67 tp_call tp_call ( string idata, string form[], ref string odata[] ) returns integer idata Service, form column dataodata. tp_call() Tmax FILED(FDL) idata : service data. TAB NewLine form : odata Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB, RowNewLine. TmaxInstance flagstimeout. msg : message tperrno : tpurcode : User Code(tpreturn ) flags : pb_tpcall flag TPNOTRAN non transaction mode TPNOCHANGE TPNOBLOCK non Blocking Mode TPNOTIME Blocking timeout timeout : pb_tx_set_transaction_timeout Blocking timeout input = SRVCNM + ~t + TOUPPER + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(1024) Tmax 4GL Programming Guide
68 ret = uo_tmax. tp_call(input, form, output) if ret < 0 then error processing end if Integer. -1 tperrnoerror, msg. pb_tpcall, f_data, f_datadel, f_form, tuxcall Tmax 4GL Programming Guide
69 tp_fcall tp_fcall ( string idata, string form[], ref string odata[], string ifilename, string fform[], ref string foutdata[] ) returns integer tp_call(). Tmax FILED(FDL) form odata fform foutdata. service data. TAB NewLine odata Field Newline Newline form. Form Newline form. PowerBuilderImportString DataWindow TAB, RowNewLine. TAB NewLine fodata Field Newline Newline form. Form Newline form.... InputFile = c:\temp\fdata0.txt InputFile = FileOpen(InputFile, StreamMode!, Write!, LockReadWrite!, Replace!)... uo_tmax.f_fdata(dw_input, InputFile) if FileClose(InputFile) <> 1 then error processing end if... ret = uo_tmax.tp_fcall(input, form, output, inputfilename, fform, foutput) if ret = -1 then error processing Tmax 4GL Programming Guide
70 end if... Integer. -1 tperrnoerror, msg. pb_tpfcall, f_data, f_datadel, f_form Tmax 4GL Programming Guide
71 tp_acall tp_acall ( ref string idata ) returns integer. (tp_getrply() ).,. tp_acall() Tmax FIELD. service data. TAB NewLine string input, form[], odata[] int cd, ret input = SRVCNM + ~t + TOUPPER + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(1024) cd = uo_tmax.tp_acall(input) if cd < 0 then error processing end if ret = uo_tmax.tp_getrply(cd, form, output) if ret < 0 then error processing end if (tp_getrply() ). pb_tpacall, tp_getrply Tmax 4GL Programming Guide
72 tp_getrply tp_getrply ( integer cd, ref string form[], ref string odata[] ) returns integer tp_getrply()tp_acall(). cdtp_acall(),. tp_getrply()tmax FIELD. form outputtp_call(). tp_acall(). form : odata Field Newline Newline form. Form Newline form. odata : PowerBuilderImportString DataWindow TAB, RowNewLine. string input, form[], odata[] int cd, ret input = SRVCNM + ~t + TOUPPER + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(1024) cd = uo_tmax.tp_acall(input) if cd < 0 then error processing end if ret = uo_tmax.tp_getrply(cd, form, output) if ret < 0 then error processing end if Tmax 4GL Programming Guide
73 Integer. -1 tperrnoerror, msg. pb_tpgetrply, tp_acall Tmax 4GL Programming Guide
74 tp_cancel tp_cancel ( integer cd ) returns integer tp_cancel()tp_acall().. commit rollback. tp_acall() string input, form[], odata[] int cd, ret input = SRVCNM + ~t + TOUPPER + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(1024) cd = uo_tmax.tp_acall(input) if cd < 0 then error processing end if ret = uo_tmax.pb_tpcancel(cd) if ret < 0 then error processing end if Integer. -1 tperrnoerror. tp_acall, tp_getrply Tmax 4GL Programming Guide
75 tuxcall tuxcall ( string svcname, powerobject sobject[], ref powerobject robject[] ) returns integer sobject PowerObject Service, robject PowerObject. tuxcall() Tmax FIELD. sobject Object. DataWindow, DataWindowChild, DataStore SingleLineEdit, MultiLineEdit StaticText, EditMask ListBox DropDownListBox CheckBox RadioButton : column FIELD FIELD. Row data. : Control.Tag FIELD Field. Control.Textdata. : Control.Tag FIELD Field. Control.Textdata. Control.Tag FIELD Field. data. Control.Tag FIELD Field. data. Control.Tag FIELD Field. Check data. Control.Tag FIELD Field. Check data. robjectobject input. ListBoxDropDownListBox data. u_tmaxinstance. dwappend : TRUE, robject DataWindow, DataWindow. FALSE dwdelbuf : TRUE, sobject DataWindow, DataWindowDelete Buffer (Primary Buffer ). TRUE DataOnFail : TRUE,. FALSE AuxData Tmax 4GL Programming Guide
76 DateFmt, TimeFmt, DateTimeFmt tp_call()input. Date/Time/DateTime, String Format. *tuxcall() tp_call(), tp_call(). long ret windowobject indata[], outdata[] indata[1] = dw_1 indata[2] = sle_input outdata[1] = dw_2 uo_tmax.flags = 0; ret = uo_tmax.tuxcall("svc1", indata, outdata) if ret < 0 then error processing end if Integer. -1 tperrnoerror, msg. tp_call, pb_tpcallw Tmax 4GL Programming Guide
77 tp_connect tp_connect ( string idata, long arg_flag ) returns integer tp_connect(). tp_send(),tp_recv(). tp_connect() Tmax FIELD. service data. TAB NewLine. TPNOTRAN : pb_tpconnect() svc, svc. svc, pb_tpconnect() TPNOTRAN. pb_tpconnect(), TPNOTRAN (timeout). TPNOTRAN,. TPSENDONLY :,,.,. TPSENDONLY TPRECVONLY. TPRECVONLY :,,.,. TPSENDONLY TPRECVONLY. TPNOTIME : TPNOTIME. pb_tpconnect(). Tmax 4GL Programming Guide
78 TPSIGSTRT : (signal)..,, tperrno TPGOTSIG. int ret, cd string idata idata = SRVCNM + ~t + CONV + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n cd = uo_tmax.tp_connect(idata, uo_tmax.tprecvonly) if cd < 0 then error processing end if Integer. -1 tperrnoerror.. tp_send, tp_recv, tp_conv, tp_discon Tmax 4GL Programming Guide
79 tp_conv tp_conv ( integer cd, string idata, ref string form[], ref string odata[], long arg_flag ) returns integer cd,. tp_conv() Tmax FIELD. tp_connect() service data. TAB NewLine odata Field Newline Newline form. Form Newline form. PowerBuilderImportString DataWindow TAB, RowNewLine. pb_tpsend(), pb_tprecv() flag. int ret, cd string idata idata = SRVCNM + ~t + CONV + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n form[1] = "OUTPUT~n~n" form[2] = "~n" output[1] = space(1024) cd = uo_tmax.tp_connect(idata, uo_tmax.tprecvonly) if cd < 0 then error processing end if ret = uo_tmax.tp_conv(cd, idata, form, output, uo_tmax.tpnoflags) if ret < 0 then if uo_tmax.revent <> uo_tmax.tpev_sendonly or & uo_tmax.revent = uo_tmax.tpev_svcsucc then error processing Tmax 4GL Programming Guide
80 end if end if,. -1,. tperrnopb_tpeevent( 22) revent pb_tpdiscon()... TPFAILtpreturn SUCCESS ( ) reventpb_tpev_svcsucc, PB_TPEV_SVCFAIL tpurcoode. -1 tperrnoerror (PB_TPEEVENT ). Tmax Reference Manualtpsend(). tp_connect, tp_discon, tp_send, tp_recv Tmax 4GL Programming Guide
81 tp_send tp_send ( integer cd, string idata, long arg_flag ) returns integer tp_send().. tp_send() Tmax FILED. pb_tpconnect() service data. TAB NewLine. TPRECVONLY : TPRECVONLY,., pb_tpsend(). pb_tprecv(), TPEV_SENDONLY. pb_tprecv(). TPNOBLOCK : (, ). TPNOBLOCK pb_tpsend(), ( ). TPNOTIME : TPNOTIME. pb_tpconnect(). TPSIGSTRT : (signal)..,, tperrno TPGOTSIG. Tmax 4GL Programming Guide
82 int ret, cd string itype, otype, idata, form[], odata[] idata = SRVCNM + ~t + CONV + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n cd = uo_tmax.tp_connect(idata, uo_tmax.tpsendonly) if cd < 0 then error processing end if ret = uo_tmax.tp_send(idata, uo_tmax.tprecvonly) if ret < 0 then error processing end if,. -1,. tperrnopb_tpeevent( 22) revent pb_tpdiscon().. TPFAILtpreturn. reventpb_tpev_svcsucc, PB_TPEV_SVCFAIL tpurcoode. -1 tperrnoerror (PB_TPEEVENT ). tp_connect, tp_discon, tp_recv, tp_conv Tmax 4GL Programming Guide
83 tp_recv tp_recv ( integer cd, ref string form[], ref string odata[], long arg_flag ) returns integer tp_recv().. tp_recv() Tmax FIELD. pb_tpconnect() odata Field Newline Newline form. Form Newline form. PowerBuilderImportString DataWindow TAB, RowNewLine.. TPNOBLOCK :., return.. TPNOTIME :. pb_tprecv(). TPSIGRSTRT : (signal)..,, tperrno TPGOTSIG. int ret, cd string itype, otype, idata, form[], odata[] idata = SRVCNM + ~t + CONV + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n Tmax 4GL Programming Guide
84 cd = uo_tmax.tp_connect(idata, uo_tmax.tprecvonly) if cd < 0 then error processing end if ret = uo_tmax.tp_recv(cd, form, odata, uo_tmax.tpnoflags) if ret < 0 then if uo_tmax.revent <> uo_tmax.tpev_sendonly or & uo_tmax.revent = uo_tmax.tpev_svcsucc then error processing end if end if,. -1,. tperrnopb_tpeevent( 22) revent pb_tpdiscon()... TPFAILtpreturn SUCCESS ( ) reventpb_tpev_svcsucc, PB_TPEV_SVCFAIL tpurcoode. -1 tperrnoerror (PB_TPEEVENT ). tp_connect, tp_discon, tp_send, tp_conv Tmax 4GL Programming Guide
85 tp_discon tp_discon ( integer cd ) returns integer tp_discon(), TPEV_DISCONIMM. tpreturn, client., abort. tp_connect() int ret, cd string idata idata = SRVCNM + ~t + CONV + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & FIELD_NAME2 + ~t + VALUE2 + ~n + & ~n cd = uo_tmax.tp_connect(idata, uo_tmax.tprecvonly) if cd < 0 then error processing end if ret = uo_tmax.tp_discon(cd) if ret < 0 then error processing end if Integer. -1 tperrnoerror. pb_tpconnect, tp_tpsend, pb_tprecv Tmax 4GL Programming Guide
86 isblocked isblocked ( ) returns integer Blocking. Blocking Service. Service Service. Service button ( button ) Service. Service button. ret = uo_tmax.isblocked() if ret = 0 then MessageBox("pb_isBlocked", "NO BLOCK " + string(uo_tmax.tperrno)) else MessageBox("pb_isBlocked", "BLOCKING") end if Integer. Blocking 1return. pb_isblocked Tmax 4GL Programming Guide
87 tp_broadcast tp_broadcast ( string nodename, string usrname, string cltname, string idata ) returns integer Client Message. nodename : Message. usrname : Message. pb_tpstart() usrname Message. cltname : Message. pb_tpstart() cltname Message. idata : service data. TAB NewLine nodename, usrname, cltname. (wildcards). usrnamecltname?* nodename *. NULL,. string nodename, usrname, cltname, data int ret. nodename = tmax usrname = * cltname = * data = SRVCNM + ~t + BROAD + ~n + & FIELD_NAME1 + ~t + VALUE1 + ~n + & ~n ret = uo_tmax.tp_broadcast(nodename, usrname, cltname, data) if ret < 0 then error processing end if Tmax 4GL Programming Guide
88 pb_tpbroadcast Tmax 4GL Programming Guide
89 tp_subscribe tp_subscribe ( unsignedinteger hwnd, string event_name, unsignedinteger message_id ) returns integer tppost(). event_name tppost() hwnd message_id., Message.WordParm ID. get_evtname() get_data() ID. tp_unsubscribe(). hwnd : event_name : message_id : ID - tp_unsubscribe Tmax 4GL Programming Guide
90 tp_unsubscribe tp_unsubscribe ( unsignedinteger hwnd ) returns integer tp_subscribe(), tp_setunsol() (hwnd) Message. hwnd : - tp_subscribe Tmax 4GL Programming Guide
91 tp_begin tp_begin ( unsignedlong timeout, long arg_flags ) returns integer., tp_commit() tp_abort(). timeout : transaction.( ) transaction timeout transactionabort. arg_flags :. if _is_tx <> true then ret = uo_tmax.tp_begin(10, 0) if ret < 0 then error processing end if _is_tx = true end If tp_commit, tp_abort Tmax 4GL Programming Guide
92 tp_commit tp_commit ( long arg_flags ) returns integer commit. arg_flags :. if _is_tx <> true then end if ret = uo_tmax.tp_commit(0) if ret < 0 then error processing end If _is_tx = false tp_begin, tp_abort Tmax 4GL Programming Guide
93 tp_abort tp_abort ( long arg_flags ) returns integer abort. arg_flags :. ret = uo_tmax.pb_tpcall("insert", itype, input, form[], output[]) if ret < 0 then if _is_tx = true then ret = uo_tmax.tp_abort(0) if ret < 0 then error processing end if _is_tx = false end if error processing end if. tp_begin, tp_commit Tmax 4GL Programming Guide
94 3. Power Builder Sample,,,,,,,. 8 singleline editor1, 6., 50.,,,. demo.pbl : client emp_c.pc : service (Oracle ) demo.f : Field Key Buffer emp_c.mk: Makefile tmconfig.m : Tmax - User Object : tmax.pbd - : FIELD KEY BUFFER fdlc fdl - : pb_tpcall() - :,,, - Tmax :,. - : FDLSELECT, FDLUPDATE, FDLDELETE, FDLINSERT - : SVRGROUP ( XA ) Tmax 4GL Programming Guide
95 < > < > Tmax 4GL Programming Guide
96 Global Variables u_tmax uo_tmax boolean btxrun, bconnect Window Fuctions tmaxconnect ( ) returns Boolean IF uo_tmax.pb_tpstart()<0 THEN st_err.text = (".\n tpstart() Failed: Error Code =" + string(uo_tmax.tperrno)) return FALSE END IF return TRUE inputcheck ( integer inputnum ) returns Boolean IF isnull( sle_empno.text ) OR sle_empno.text = "" THEN st_err.text = "." return FALSE END IF IF( inputnum = 1) THEN return TRUE IF isnull( sle_name.text ) OR sle_name.text = "" THEN goto errormsg IF isnull( sle_job.text ) OR sle_job.text = "" THEN goto errormsg IF isnull( sle_mgr.text ) OR sle_mgr.text = "" THEN goto errormsg IF (len(sle_date.text) <>8 ) THEN goto errormsg IF isnull( sle_sal.text ) OR sle_sal.text = "" THEN goto errormsg IF isnull( sle_comm.text ) OR sle_comm.text = "" THEN goto errormsg IF isnull( sle_dept.text ) OR sle_dept.text = "" THEN goto errormsg return TRUE errormsg: st_err.text = ", 8 (YYYYMMDD)." return FALSE clearwindow ( ) returns Boolean sle_empno.clear() sle_name.clear() sle_job.clear() sle_mgr.clear() sle_date.clear() sle_sal.clear() sle_comm.clear() sle_dept.clear() sle_empno.setfocus() Tmax 4GL Programming Guide
97 errorprocess ( string infomsg ) st_err.text = InfoMsg IF( btxrun = TRUE ) THEN uo_tmax.pb_tx_rollback() btxrun = FALSE END IF IF( bconnect = TRUE ) THEN uo_tmax.pb_tpend() bconnect = FALSE END IF successprocess ( string infomsg ) st_err.text = InfoMsg IF( btxrun = TRUE ) THEN uo_tmax.pb_tx_commit() btxrun = FALSE END IF IF( bconnect = TRUE ) THEN uo_tmax.pb_tpend() bconnect = FALSE END IF Open Script string FileName uo_tmax = CREATE u_tmax uo_tmax.flags = 0 FileName ="D:\PB\MyProgram\tmax.env" IF uo_tmax.pb_tmaxreadenv( FileName, "tmax1") <0 THEN messagebox( "Eviroment Error","Enviroment File Loading Failed : Error Code =" + string(uo_tmax.tperrno)) return END IF open(w_demo) Script string itype, idata, form[], odata[] IF(inputcheck(1) = FALSE) THEN return Tmax 4GL Programming Guide
98 itype = "FIELD~t~n" idata = "EMPNO"+"~t"+sle_empno.text+"~n" form[1] ="EMPNO~n" + & "ENAME~n" + & "JOB~n" + & "MGR~n" + & "DATE~n" + & "SAL~n" + & "COMM~n" + & "DEPTNO~n" + & "E_TYPE~nE_CODE~nE_MSG~nE_TMP~n~n" form[2] = "~n"//"e_type~ne_code~ne_msg~ne_tmp~n~n" odata[1] = space(1024) bconnect = tmaxconnect() IF bconnect = FALSE THEN errorprocess( ".") return END IF IF uo_tmax.pb_tpcall("fdlselect", itype, idata, form[], odata[]) <0 THEN errorprocess( uo_tmax.f_getdata(form[1], odata[1], 1, "E_MSG") ) return END IF dw_out.importstring(odata[1]) dw_out.visible = TRUE cb_back.visible = TRUE cb_sel.enabled = FALSE cb_udt.enabled = FALSE cb_del.enabled = FALSE cb_ins.enabled = FALSE cb_exit.enabled = FALSE successprocess( sle_empno.text + ".") Script string itype, idata, form[], odata[] IF(inputcheck(0) = FALSE) THEN return itype = "FIELD~t~n" idata = "EMPNO~t" +sle_empno.text+"~n" + & "ENAME~t"+sle_name.text+"~n" + & "JOB~t"+sle_job.text+"~n" + & "MGR~t"+sle_mgr.text+"~n" + & "DATE~t" +sle_date.text+"~n" + & Tmax 4GL Programming Guide
99 "SAL~t" +sle_sal.text+"~n" + & "COMM~t" +sle_comm.text+"~n" + & "DEPTNO~t" +sle_dept.text+"~n~n" form[1] = "E_TYPE~nE_CODE~nE_MSG~nE_TMP~n~n" form[2] = "~n" odata[1] = space(1024) bconnect = tmaxconnect() IF bconnect = FALSE THEN errorprocess( ".") return END IF IF btxrun = FALSE THEN IF uo_tmax.pb_tx_begin()<0 THEN errorprocess( "pb_tx_begin Error") return END IF btxrun = TRUE END IF IF uo_tmax.pb_tpcall("fdlupdate", itype, idata, form[], odata[])<0 THEN errorprocess( "Error:\n"+uo_tmax.f_getdata(form[1], odata[1], 1, "E_MSG") ) return END IF clearwindow() successprocess( sle_empno.text + "." ) Script int string ret itype, idata, form[], odata[] IF(inputcheck(1) = FALSE) THEN return itype = "FIELD~t~n" idata = "EMPNO"+"~t"+sle_empno.text+"~n~n" form[1] = "E_TYPE~nE_CODE~nE_MSG~nE_TMP~n~n" form[2] = "~n" odata[1] = space(1024); bconnect = tmaxconnect() IF bconnect = FALSE THEN errorprocess( ".") return END IF Tmax 4GL Programming Guide
100 IF btxrun = FALSE THEN IF uo_tmax.pb_tx_begin()<0 THEN errorprocess( "pb_tx_begin Error") return END IF btxrun = TRUE END IF IF uo_tmax.pb_tpcall("fdldelete", itype, idata, form[], odata[])<0 THEN errorprocess( uo_tmax.f_getdata(form[1], odata[1], 1, "E_MSG") ) return END IF successprocess( sle_empno.text + "." ) clearwindow() Script long string ret itype, idata, form[], odata[] IF(inputcheck(0) = FALSE) THEN return itype = "FIELD~t~n" idata = "EMPNO~t"+sle_empno.text+"~n" + & "ENAME~t"+sle_name.text+"~n" + & "JOB~t"+sle_job.text+"~n" + & "MGR~t"+sle_mgr.text+"~n" + & "DATE~t"+sle_date.text+"~n" + & "SAL~t"+sle_sal.text+"~n" + & "COMM~t"+sle_comm.text+"~n" + & "DEPTNO~t"+sle_dept.text+"~n" + & "~n" form[1] = "E_TYPE~nE_CODE~nE_MSG~nE_TMP~n~n" form[2] = "~n" odata[1] = space(1024); bconnect = tmaxconnect() IF bconnect = FALSE THEN errorprocess( ".") return END IF IF btxrun = FALSE THEN IF uo_tmax.pb_tx_begin()<0 THEN errorprocess( "pb_tx_begin Error") Tmax 4GL Programming Guide
101 return END IF btxrun = TRUE END IF IF uo_tmax.pb_tpcall("fdlinsert", itype, idata, form[], odata[])<0 THEN errorprocess( uo_tmax.f_getdata(form[1], odata[1], 1, "E_MSG") ) return END IF successprocess( sle_empno.text + "." ) clearwindow() Script close(w_demo) Script int i cb_sel.enabled = TRUE cb_udt.enabled = TRUE cb_del.enabled = TRUE cb_ins.enabled = TRUE cb_exit.enabled = TRUE FOR i=1 to (dw_out.rowcount()+2) dw_out.deleterow ( 1 ) NEXT clearwindow() dw_out.visible = FALSE cb_back.visible = FALSE Tmax 4GL Programming Guide
102 demo.f DataBase EMP Table EMPNO NUMBER NOT NULL P1 ENAME VARCHAR(16) JOB VARCHAR(16) MGR NUMBER HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER Tmax 4GL Programming Guide
103 emp_c.pc Tmax 4GL Programming Guide
104 Tmax 4GL Programming Guide
105 Tmax 4GL Programming Guide
106 Tmax 4GL Programming Guide
107 Tmax 4GL Programming Guide
108 Tmax 4GL Programming Guide
109 } Tmax 4GL Programming Guide
110 emp_c.mk Tmax 4GL Programming Guide
111 tmconfig.m *DOMAIN dom1 *NODE tmax1 *SVRGROUP svg1 *SERVER emp_c *SERVICE FDLSELECT FDLUPDATE FDLDELETE FDLINSERT SHMKEY=70000, MAXUSER=200, MINCLH=1, MAXCLH=5, TPORTNO=8888, BLOCKTIME=200, TXTIME=200 TMAXDIR="/home/tmax", APPDIR="/home/tmax/appbin", PATHDIR="/home/tmax/path", TLOGDIR= "/home/tmax/log/tlog", SLOGDIR="/home/tmax/log/slog" ULOGDIR="/home/tmax/log/ulog" NODENAME=tmax1, DBNAME=ORACLE, OPENINFO="ORACLE_XA+Acc=P/scott/tiger+SesTm=60", TMSNAME = svg1_tms SVGNAME=svg1, MIN=1 SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c Tmax 4GL Programming Guide
112 II. Visual Basic Tmax 4GL Programming Guide
113 1... atmi.bas fdl. Bas comm..bas winapi.bas : atmi : : : windows Tmax.. (comm.bas). atmi Tmax Reference Manual Tmax Programming Guide.. Tmax 4GL Programming Guide
114 2. PUTINT Function PUTINT(ByVal Fdlptr&, Field As String, idx As Long, idata As Integer) As Long FIELD(FDL) Field Integer idata idx. Fdlptr : FDL Field : idx : idata : Dim lsendbuf As Long Dim lret As Long Dim intdata As Integer lsendbuf = tpalloc("field ", "", 0) lret = PUTINT(ByVal lsendbuf, "INTDATA", 0, intdata) PUTLONG, PUTDOUBLE, PUTVAR, PUTCAR, PUTFLOAT, PUTSTR, PUTCHR Tmax 4GL Programming Guide
115 PUTLONG Function PUTLONG(ByVal Fdlptr&, Field As String, idx As Long, ldata As Long) As Long FIELD(FDL) Field Long ldata idx. Fdlptr : FDL Field : Idx : LData : Dim lsendbuf As Long Dim lret As Long Dim longdata As Long lsendbuf = tpalloc("field ", "", 0) lret = PUTLONG(ByVal lsendbuf, "LONGDATA", 0, longdata) PUTINT, PUTDOUBLE, PUTVAR, PUTCAR, PUTFLOAT, PUTSTR, PUTCHR Tmax 4GL Programming Guide
116 PUTFLOAT Function PUTFLOAT(ByVal Fdlptr&, Field As String, idx As Long, ddata As Single) As Long FIELD(FDL) Field Single ddata idx. Fdlptr : FDL Field Idx Ddata Dim lsendbuf As Long Dim lret As Long Dim doubledata As Single lsendbuf = tpalloc("field ", "", 0) lret = PUTFLOAT(ByVal lsendbuf, "DOUBLEDATA", 0, doubledata) PUTINT, PUTLONG, PUTVAR, PUTCAR, PUTDOUBLE, PUTSTR, PUTCHR Tmax 4GL Programming Guide
117 PUTDOUBLE Function PUTDOUBLE(ByVal Fdlptr&, Field As String, idx As Long, ddata As Double) As Long FIELD(FDL) Field Double ddata idx. Fdlptr : FDL Field idx ddata Dim lsendbuf As Long Dim lret As Long Dim doubledata As Double lsendbuf = tpalloc("field ", "", 0) lret = PUTDOUBLE(ByVal lsendbuf, "DOUBLEDATA", 0, doubledata) PUTINT, PUTLONG, PUTVAR, PUTCAR, PUTFLOAT, PUTSTR, PUTCHR Tmax 4GL Programming Guide
118 PUTVAR Function PUTVAR(ByVal Fdlptr&, Field As String, idx As Long, text As String) As Long FIELD(FDL) Field String text idx. Fdlptr : FDL Field : idx : text : Dim lsendbuf As Long Dim lret As Long lsendbuf = tpalloc("field ", "", 0) lret = PUTVAR(ByVal lsendbuf, "INPUT", 0, txtinput.text) PUTINT, PUTLONG, PUTDOUBLE, PUTCAR, PUTFLOAT, PUTSTR, PUTCHR Tmax 4GL Programming Guide
119 PUTCAR_BA Function PUTCAR_BA(ByVal Fdlptr&, Field As String, idx As Long, ByteArray() As Byte, datalen As Long) As Long FIELD(FDL) Field Image ByteArray idx. Fdlptr : FDL Field : idx : ByteArray : datalen : ByteArray Dim isrc As Integer Dim lcopy As Long Dim lsize As Long Dim lbuffer() As Byte Dim datalen As Long lsendbuf = tpalloc("field", "", ) isrc = FreeFile Open ".\nmlogo.bmp" For Binary Access Read As isrc lsize = LOF(iSrc) datalen = lsize Do If lsize > MAX_BUFFER Then lsize = lsize - MAX_BUFFER lcopy = MAX_BUFFER Else lcopy = lsize End If ReDim lbuffer(lcopy - 1) Get isrc,, lbuffer Loop Until lcopy = lsize Close isrc lret = PUTCAR_BA(ByVal lsendbuf, "TP_BITMAP", 0, lbuffer, datalen) if lret < 0 then error processing Tmax 4GL Programming Guide
120 end if PUTINT, PUTLONG, PUTDOUBLE, PUTCAR, PUTVAR, PUTFLOAT, PUTSTR, PUTCHR Tmax 4GL Programming Guide
121 PUTSTR Function PUTSTR(ByVal strptr&, text As String) As Long STRING text. strptr : STRING text : Dim lsendbuf As Long Dim lret As Long Dim text As String lsendbuf = tpalloc("string", "", 1024) lret = PUTSTR(lsendbuf, text) PUTINT, PUTLONG, PUTDOUBLE, PUTVAR, PUTCAR, PUTFLOAT, PUTCHR Tmax 4GL Programming Guide
122 PUTCHR Function PUTCHR(ByVal Fdlptr&, ByVal Field As String, ByVal idx As Integer, ByRef data As String, ByVal datalen As Integer) As Integer Tmax fdl fbchg_tu() nth fldname value. value Char. Fbchg_tu() (nth) (value),. Fldptr : STRING Fieldt : Idx : Data : String datalen : String Dim lsendbuf As Long Dim lret As Long Dim chr As String lsendbuf = fballoc(10, 100) chr = a lret = PUTSTR(lsendbuf, CHR, 0, chr, 1 ) PUTINT, PUTLONG, PUTDOUBLE, PUTVAR, PUTCAR, PUTFLOAT, PUTSTR Tmax 4GL Programming Guide
123 PUTCAR Function PUTCAR(ByVal Carptr&, text As String, Datalen As Long) As Long CARRAY String text. Carptr : FDL Text : Datalen : Dim lsendbuf As Long Dim lret As Long Dim DataLen As Long lsendbuf = tpalloc("carray", "", 1024) 'CARRAY. DataLen = LenB(txtInput.text) lret = PUTCAR(ByVal lsendbuf, txtinput.text, DataLen) PUTINT, PUTLONG, PUTDOUBLE, PUTVAR, PUTFLOAT, PUTSTR, PUTCHR lstrcpy. ) Dim lsendbuf As Long Dim lret As Long lsendbuf = tpalloc("string", "", 1024) lret = lstrcpy(byval lsendbuf, ByVal txtinput.text) Tmax 4GL Programming Guide
124 GETINT Function GETINT(ByVal Fdlptr&, Field As String, idx As Long, idata As Integer) As Long FIELD(FDL) Field idxinteger idata. Fdlptr : FDL Field : idx : idata : Dim lsendbuf As Long Dim lret As Long Dim intdata As Integer lsendbuf = tpalloc("field ", "", 0) lret = GETINT(ByVal lsendbuf, "INTDATA", 0, intdata) GETLONG, GETDOUBLE, GETVAR, GETCAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
125 GETLONG Function GETLONG(ByVal Fdlptr&, Field As String, idx As Long, ldata As Long) As Long FIELD(FDL) Field idxlong ldata. Fdlptr : FDL Field : idx : ldata : Dim lsendbuf As Long Dim lret As Long Dim longdata As Long lsendbuf = tpalloc("field ", "", 0) lret = GETLONG(ByVal lsendbuf, "LONGDATA", 0, longdata) GETINT, GETDOUBLE, GETVAR, GETCAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
126 GETFLOAT Function GETFLOAT (ByVal Fdlptr&, Field As String, idx As Long, ddata As Single) As Long FIELD(FDL) Field idxsingle ddata. Fdlptr : FDL Field idx ddata Dim lsendbuf As Long Dim lret As Long Dim doubledata As Single lsendbuf = tpalloc("field ", "", 0) lret = GETFLOAT (ByVal lsendbuf, "DOUBLEDATA", 0, doubledata) Tmax 4GL Programming Guide
127 GETDOUBLE Function GETDOUBLE(ByVal Fdlptr&, Field As String, idx As Long, ddata As Double) As Long FIELD(FDL) Field idxdouble ddata. Fdlptr : FDL Field idx ddata Dim lsendbuf As Long Dim lret As Long Dim doubledata As Double lsendbuf = tpalloc("field ", "", 0) lret = GETDOUBLE(ByVal lsendbuf, "DOUBLEDATA", 0, doubledata) GETINT, GETLONG, GETVAR, GETCAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
128 GETVAR Function GETVAR(ByVal Fdlptr&, Field As String, idx As Long, text As String) As Long FIELD(FDL) Field idxstring text. Fdlptr : FDL Field : idx : text : Dim lsendbuf As Long Dim lret As Long lsendbuf = tpalloc("field ", "", 0) lret = GETVAR(ByVal lsendbuf, "INPUT", 0, txtoutput.text) GETINT, GETLONG, GETDOUBLE, GETCAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
129 GETCAR_BA Function GETCAR_BA (ByVal Fdlptr&, Field As String, idx As Long, ByRef ByteArray() As Byte, datalen As Long) As Long FIELD(FDL) Field idximage ByteArray. Fdlptr : FDL Field : idx : ByteArray : datalen : ByteArray Dim rbuffer(102400) As Byte Dim datalen As Long lrecvbuf = tpalloc("field", "", ) lret = PUTCAR_BA(ByVal lsendbuf, "TP_BITMAP", 0, lbuffer, datalen) if lret < 0 then error processing end if lret = tpcall(byval "FILEUP", ByVal lsendbuf, ByVal datalen&, lrecvbuf, lrbuflen, ByVal 0) lblcomment.caption = lblcomment.caption & " -> tpcall : " & lret If lret = -1 Then error processing end If lret = GETCAR_BA(ByVal lrecvbuf, "TP_BITMAP", 0, rbuffer, datalen) if lret < 0 then error processing end if GETINT, GETLONG, GETDOUBLE, GETCAR, GETVAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
130 GETSTR Function GETSTR(ByVal strptr&, text As String) As Long STRING text. strptr : STRING text : Dim lsendbuf As Long Dim lret As Long Dim text As String lsendbuf = fballoc(10, 100) Irecvbuf = fballoc(10, 100) lret = tpcall(byval SVC1, ByVal lsendbuf, ByVal DataLen&, lrecvbuf, lrbuflen, ByVal 0) lret = GETSTR(lrecvbuf, text) GETINT, GETLONG, GETDOUBLE, GETVAR, GETCAR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
131 GETCHR Function GETCHR(ByVal Fdlptr&, ByVal Field As String, ByVal idx As Integer, ByRef data As String, ByVal datalen As Integer) As Integer Tmax fdl fbchg_tu() nth Field value. value Char. fbget_tu() (idx) (char).. Fldptr : STRING Field : Idx : Data : string datalen : string Dim lsendbuf As Long Dim lret As Long Dim chr As String lsendbuf = fballoc(10, 100) Irecvbuf = fballoc(10, 100) lret = tpcall(byval SVC1, ByVal lsendbuf, ByVal DataLen&, lrecvbuf, lrbuflen, ByVal 0) 'lret = GETSTR(lrecvbuf, CHR, 0, chr, 1 ) GETINT, GETLONG, GETDOUBLE, GETVAR, GETSTR, GETCAR, GETFLOAT Tmax 4GL Programming Guide
132 GETCAR Function GETCAR(ByVal Carptr&, text As String, Datalen As Long) As Long CARRAY String text. Carptr : FDL Text : Datalen : Dim lsendbuf As Long Dim lrecvbuf As Long Dim text As String Dim lret As Long Dim lrbuflen As Long lsendbuf = tpalloc("carray", "", 1024) lrecvbuf = tpalloc("carray", "", 1024) lret = tpcall(byval SVC1, ByVal lsendbuf, ByVal DataLen&, lrecvbuf, lrbuflen, ByVal 0) 'CARRAY. lret = GETCAR(lsendbuf, text, lrbuflen) GETINT, GETLONG, GETDOUBLE, GETVAR, GETSTR, GETFLOAT, GETSTR, GETCHR Tmax 4GL Programming Guide
133 TmaxError Sub TmaxError(StrErr As String) StrErr tperrno string error MsgBox. StrErr : Dim lsendbuf As Long Dim lrecvbuf As Long Dim lret As Long Dim lrbuflen As Long lsendbuf = tpalloc("carray", "", 1024) lrecvbuf = tpalloc("carray", "", 1024) lret = tpcall(byval "SVC1", ByVal lsendbuf, ByVal 0, lrecvbuf, lrbuflen, ByVal 0) If lret = -1 Then TmaxError ("tpcall (SVC1)") End If FdlErrorMsg Tmax 4GL Programming Guide
134 FdlErrorMsg Sub FdlErrorMsg(StrErr As String) StrErr fberrno MsgBox. StrErr : lret = fbput(byval lsendbuf, ByVal lfid, ByVal txtinput.text, ByVal 0) If lret = -1 Then FdlErrorMsg("fbput") error processing End If TmaxError Tmax 4GL Programming Guide
135 FilltpstartBuf Function FilltpstartBuf(sndbufp As Long, startinfop As tpstart_t) As Long Tmax tpstart_t. sndbufp : tpalloc startinfop : tpstart_t Dim lsndbuf As Integer Dim lret As Integer TmaxError Tmax 4GL Programming Guide
136 3. Visual Basic Sample, (EMP),,,.. TMAXDIR, IP.. : atmi.bas, fdl.bas, comm.bas, winapi.bas. *** VB *** EmployeeGrid.frm :. EmployeeGrid.frx EmployeeMgr.frm :Main.,,,. MSSCCPRJ.SCC QA_4GL.vbg QA_4GL_Sample.exe QA_4GL_Sample.vbp QA_4GL_Sample.vbw Atmi.bas comm.bas fdl.bas winapi.bas *** *** emp_c.mk : Makefile. emp_c.pc :. AIXOracle 9i. employee.m : Tmax *** *** demo.f : Field key bufferr. tmax. - Tmax : NULL - : FIELD KEY BUFFER fdlc fdl - : tpcall() Tmax 4GL Programming Guide
137 - : Tms AutoTransaction - : FDLSELECT, FDLINSERT, FDLDELETE, FDLUPDATE - : SVRGROUP EmployeeMgr EmployeeMgr Caption= LabelErr Caption= BtnExit BtnIns BtnDel BtnUdt BtnSel EditName EditEmpNo EditDept EditComm EditSal EditDate EditMgr EditJob Caption= Caption= Caption= Caption= Caption= < > Tmax 4GL Programming Guide
138 < > EmployeeMgr.frm Source Option Explicit Private Sub BtnDel_Click() Dim Isendbuf As Long Dim Irecvbuf As Long Dim Irbuflen As Long Dim Iret As Long Dim text As String Dim value As Long Dim dvalue As Double Dim svalue As Single Dim tx_b As Integer Dim txbool As Integer ' 1, 0 ' ' tpstart ' tmaxstart ' ' txbool = 0 If EditEmpNo.text = "" Then MsgBox "." Tmax 4GL Programming Guide
139 tmaxend Exit Sub End If value = Trim(EditEmpNo.text) ' ' Isendbuf = fballoc(100, 1024) If Isendbuf = Null Then TmaxError ("fballoc") Call fbfree(isendbuf) tmaxend Exit Sub End If ' ' Irecvbuf = fballoc(100, 1024) If Irecvbuf = Null Then TmaxError ("fballoc") Call fbfree(irecvbuf) tmaxend Exit Sub End If Iret = PUTLONG(ByVal Isendbuf, "EMPNO", 0, value) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tx_begin txbool = 1 If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tpcall(byval "FDLDELETE", ByVal Isendbuf, ByVal 0, Irecvbuf, Irbuflen, ByVal 0) LabelErr.Caption = "sbuf = " & Isendbuf & ", rbuf = " & Irecvbuf If Iret = -1 Then TmaxError ("tpcall(svc1)") ViewErr (Irecvbuf) Call ExitSub(txbool, Isendbuf, Irecvbuf) Tmax 4GL Programming Guide
140 End If ' ' Iret = tx_commit If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) Else txbool = 1 Call ExitSub(txbool, Isendbuf, Irecvbuf) End If End Sub Private Sub BtnExit_Click() End End Sub Private Sub BtnIns_Click() Dim Isendbuf As Long Dim Irecvbuf As Long Dim Irbuflen As Long Dim Iret As Long Dim text As String Dim value As Long Dim dvalue As Double Dim svalue As Single Dim lenl As Long Dim txbool As Integer ' 1, 0 ' ' tpstart ' tmaxstart ' ' txbool = 0 If EditEmpNo.text = "" Then MsgBox "." tmaxend Exit Sub End If ' ' Isendbuf = fballoc(100, 1024) If Isendbuf = Null Then TmaxError ("fballoc") Call fbfree(isendbuf) Tmax 4GL Programming Guide
141 tmaxend Exit Sub End If ' ' Irecvbuf = fballoc(100, 1024) If Irecvbuf = Null Then TmaxError ("fballoc") Call fbfree(irecvbuf) tmaxend Exit Sub End If Iret = PUTLONG(ByVal Isendbuf, "EMPNO", 0, Trim(EditEmpNo.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "ENAME", 0, Trim(EditName.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "JOB", 0, Trim(EditJob.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTLONG(ByVal Isendbuf, "MGR", 0, Trim(EditMgr.text)) If Iret = -1 Then ' ' Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "DATE", 0, Trim(EditDate.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If svalue = Trim(EditSal.text) ' fbput, fbget_fldkey comm.bas. ' ' fbget_fldkey. ' Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("sal"), svalue, ByVal lenl) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If '. ' Tmax 4GL Programming Guide
142 'svalue = Trim(EditComm.text) 'Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("comm"), svalue, ByVal lenl) 'If Iret = -1 Then ' FdlErrorMsg ("fbput") ' Exit Sub 'End If '. ' Iret = PUTFLOAT(ByVal Isendbuf, "COMM", 0, Trim(EditComm.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTLONG(ByVal Isendbuf, "DEPTNO", 0, Trim(EditDept.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tx_begin txbool = 1 If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tpcall(byval "FDLINSERT", ByVal Isendbuf, ByVal 0, Irecvbuf, Irbuflen, ByVal 0) LabelErr.Caption = "sbuf = " & Isendbuf & ", rbuf = " & Irecvbuf If Iret = -1 Then TmaxError ("tpcall(svc1)") ViewErr (Irecvbuf) Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tx_commit If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) Else txbool = 1 Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Tmax 4GL Programming Guide
143 End Sub ' ' ' ' Private Sub BtnSel_Click() Hide ' ' EmployeeGrid.Show End Sub ' ' Private Sub BtnUdt_Click() Dim Isendbuf As Long Dim Irecvbuf As Long Dim Irbuflen As Long Dim Iret As Long Dim text As String Dim value As Long Dim dvalue As Double Dim svalue As Single Dim lenl As Long Dim txbool As Integer ' 1, 0 ' ' tpstart ' tmaxstart ' ' txbool = 0 If EditEmpNo.text = "" Then MsgBox "." tmaxend Exit Sub End If ' ' Isendbuf = fballoc(100, 1024) If Isendbuf = Null Then TmaxError ("fballoc") Call fbfree(isendbuf) tmaxend Exit Sub End If ' ' Irecvbuf = fballoc(100, 1024) Tmax 4GL Programming Guide
144 If Irecvbuf = Null Then TmaxError ("fballoc") Call fbfree(irecvbuf) tmaxend Exit Sub End If Iret = PUTLONG(ByVal Isendbuf, "EMPNO", 0, Trim(EditEmpNo.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "ENAME", 0, Trim(EditName.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "JOB", 0, Trim(EditJob.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTLONG(ByVal Isendbuf, "MGR", 0, Trim(EditMgr.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Iret = PUTVAR(ByVal Isendbuf, "DATE", 0, Trim(EditDate.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If svalue = Trim(EditSal.text) ' Declare Function fbput Lib "TMAX4GL.DLL" (ByVal pfbuf As Long, ByVal fieldid As Long, pbuffer As Any, ByVal Fieldlen As Long) As Long Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("sal"), svalue, ByVal lenl) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If svalue = Trim(EditComm.text) Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("comm"), svalue, ByVal lenl) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If Tmax 4GL Programming Guide
145 Iret = PUTLONG(ByVal Isendbuf, "DEPTNO", 0, Trim(EditDept.text)) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tx_begin txbool = 1 If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tpcall(byval "FDLUPDATE", ByVal Isendbuf, ByVal 0, Irecvbuf, Irbuflen, ByVal 0) LabelErr.Caption = "sbuf = " & Isendbuf & ", rbuf = " & Irecvbuf If Iret = -1 Then TmaxError ("tpcall(svc1)") ViewErr (Irecvbuf) Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tx_commit If Iret < 0 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) Else txbool = 1 Call ExitSub(txbool, Isendbuf, Irecvbuf) End If End Sub Private Sub ExitSub(txbool As Integer, Isendbuf As Long, Irecvbuf As Long) If txbool = 1 Then tx_rollback End If ' ' Call fbfree(byval Isendbuf&) Call fbfree(byval Irecvbuf&) ' tpend ' tmaxend Tmax 4GL Programming Guide
146 Exit Sub End Sub ' tpstart ' Private Sub tmaxstart() Dim ret As Integer '. ' ' atmi.bas. ' ' Declare Function tmaxreadenv Lib "TMAX4GL.DLL" (ByVal envfile As String, ByVal label As String) As Long ' ' Tmax Reference Manual. ' ret = tmaxreadenv("c:\tmax.env", "aix5l389") If ret < 0 Then TmaxError ("tmaxreadenv") Exit Sub End If ret = tpstart(byval 0&) If ret = -1 Then LabelErr.Caption = "tpstart error = " & gettperrno() TmaxError ("tpstart") Exit Sub Else LabelErr.Caption = "tpstart return value = " & ret & " tpstart success" End If End Sub ' tpend ' Private Sub tmaxend() Dim ret As Integer ret = tpend() If ret = -1 Then LabelErr.Caption = "tpend error = " & gettperrno() TmaxError ("tpend") Exit Sub Else LabelErr.Caption = "tpreturn return value = " & ret End If End Sub Tmax 4GL Programming Guide
147 < > ' ' Private Sub ViewErr(ByVal a As Long) 'E_TYPE 9009 long - - 'E_CODE 9010 long - - 'E_MSG 9011 string - - 'E_TMP 9012 long - - Dim typel, codel, tmpl As Long Dim msgs As String Dim Iret As Integer ' Tmax FDL Reference Manual ' ' comm.bas ' Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_type"), 0, typel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_code"), 0, codel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = GETVAR(ByVal a, "E_MSG", 0, msgs) If Iret = -1 Then TmaxError ("ViewErr, GETVAR, E_MSG") Exit Sub End If Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_tmp"), 0, tmpl, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If ' ' Tmax 4GL Programming Guide
148 MsgBox ("Error Type : " & typel & ",Code : " & codel & ",Message : " & msgs & ",Tmp : " & tmpl) End Sub Tmax 4GL Programming Guide
149 EmployeeGrid EmployeeGrid Caption= InfoText MultiLine=True BtnReturn Caption= < > < > EmployeeGrid.frm Source LabelErr Option Explicit ' ' Private Sub BtnReturn_Click() Hide EmployeeMgr.Show End Sub ' Click ' Private Sub Form_Activate() Dim Isendbuf As Long Tmax 4GL Programming Guide
150 Dim Irecvbuf As Long Dim Irbuflen As Long Dim Iret As Integer Dim text As String Dim value As Long Dim dvalue As Double Dim svalue As Single Dim lenl As Long Dim inits, outputs As String Dim empnos, enames, jobs, mgrs, dates, sals, comms, deptnos As String Dim cntl As Long Dim eno As Long Dim txbool As Integer ' 1, 0 ' ' tpstart ' tmaxstart ' ' txbool = 0 inits = vbcrlf & vbtab & vbtab & vbtab & "***** *****" & vbcrlf & vbtab & "=========================================================" & vbcrlf & vbtab & " COMM " & vbcrlf & vbtab & "=========================================================" & vbcrlf & vbcrlf If EmployeeMgr.EditEmpNo.text = "" Then MsgBox "." Hide EmployeeMgr.Show Exit Sub End If ' ' Isendbuf = fballoc(100, 1024) If Isendbuf = Null Then TmaxError ("fballoc") Call fbfree(isendbuf) tmaxend Exit Sub End If ' ' Irecvbuf = fballoc(100, 1024) If Irecvbuf = Null Then Tmax 4GL Programming Guide
151 TmaxError ("fballoc") Call fbfree(irecvbuf) tmaxend Exit Sub End If '. eno = Trim(EmployeeMgr.EditEmpNo.text) Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("empno"), eno, ByVal lenl) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tpcall(byval "FDLSELECT", ByVal Isendbuf, ByVal 0, Irecvbuf, Irbuflen, ByVal 0) If Iret = -1 Then ViewErr (Irecvbuf) Call ExitSub(txbool, Isendbuf, Irecvbuf) End If cntl = fbkeyoccur(byval Irecvbuf, ByVal fbget_fldkey("empno")) Dim i As Long For i = 0 To cntl - 1 Iret = GETLONG(ByVal Irecvbuf, "EMPNO", i, value) If Iret = -1 Then TmaxError ("GETLONG(EMPNO)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If empnos = value Iret = GETVAR(ByVal Irecvbuf, "ENAME", i, text) If Iret = -1 Then TmaxError ("GETVAR(ENAME)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If enames = text Iret = GETVAR(ByVal Irecvbuf, "JOB", i, text) If Iret = -1 Then TmaxError ("GETVAR(JOB)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If jobs = text Tmax 4GL Programming Guide
152 Iret = GETLONG(ByVal Irecvbuf, "MGR", i, value) If Iret = -1 Then TmaxError ("GETLONG(MGR)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If mgrs = value Iret = GETVAR(ByVal Irecvbuf, "DATE", i, text) If Iret = -1 Then TmaxError ("GETVAR(DATE)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If dates = text ' SAL float. ' ' comm.bas. ' Iret = fbget_tu(byval Irecvbuf, ByVal fbget_fldkey("sal"), i, svalue, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If sals = svalue Iret = GETFLOAT(ByVal Irecvbuf, "COMM", i, svalue) If Iret = -1 Then TmaxError ("GETFLOAT(COMM)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If comms = svalue Iret = GETLONG(ByVal Irecvbuf, "DEPTNO", i, value) If Iret = -1 Then TmaxError ("GETLONG(DEPTNO)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If deptnos = value & vbcrlf outputs = outputs & " " & empnos & vbtab & enames & vbtab & jobs & vbtab & mgrs & vbtab & dates & vbtab & sals & vbtab & comms & vbtab & deptnos Next i InfoText.text = inits & outputs ' ' LabelErr.Caption = "SAL = " & dvalue Tmax 4GL Programming Guide
153 Call ExitSub(txbool, Isendbuf, Irecvbuf) End Sub Private Sub ExitSub(txbool As Integer, Isendbuf As Long, Irecvbuf As Long) If txbool = 1 Then tx_rollback End If ' ' Call fbfree(byval Isendbuf&) Call fbfree(byval Irecvbuf&) ' tpend ' tmaxend Exit Sub End Sub ' tpstart ' Private Sub tmaxstart() Dim ret As Integer '. ' ' atmi.bas. ' ' Declare Function tmaxreadenv Lib "TMAX4GL.DLL" (ByVal envfile As String, ByVal label As String) As Long ' ' Tmax Reference Manual. ' ret = tmaxreadenv("c:\tmax.env", "aix5l389") If ret < 0 Then TmaxError ("tmaxreadenv") Exit Sub End If ret = tpstart(byval 0&) If ret = -1 Then LabelErr.Caption = "tpstart error = " & gettperrno() TmaxError ("tpstart") Exit Sub Else LabelErr.Caption = "tpstart return value = " & ret & " tpstart success" End If End Sub ' tpend ' Tmax 4GL Programming Guide
154 Private Sub tmaxend() Dim ret As Integer ret = tpend() If ret = -1 Then LabelErr.Caption = "tpend error = " & gettperrno() TmaxError ("tpend") Exit Sub Else LabelErr.Caption = "tpreturn return value = " & ret End If End Sub ' ' Private Sub ViewErr(ByVal a As Long) 'E_TYPE 9009 long - - 'E_CODE 9010 long - - 'E_MSG 9011 string - - 'E_TMP 9012 long - - Dim typel As Long Dim codel As Long Dim msgs As String Dim tmpl As Long Dim Iret As Integer Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_type"), 0, typel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_code"), 0, codel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = GETVAR(ByVal a, "E_MSG", 0, msgs) Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_tmp"), 0, tmpl, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If MsgBox ("Error Type : " & typel & ",Code : " & codel & ",Message : " & msgs & ",Tmp : " & tmpl) Tmax 4GL Programming Guide
155 End Sub demo.f DataBase EMP Table EMPNO NUMBER NOT NULL P1 ENAME VARCHAR(16) JOB VARCHAR(16) MGR NUMBER HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER Tmax 4GL Programming Guide
156 emp_c.pc Tmax 4GL Programming Guide
157 Tmax 4GL Programming Guide
158 Tmax 4GL Programming Guide
159 Tmax 4GL Programming Guide
160 Tmax 4GL Programming Guide
161 Tmax 4GL Programming Guide
162 } Tmax 4GL Programming Guide
163 emp_c.mk Tmax 4GL Programming Guide
164 tmconfig.m *DOMAIN dom1 *NODE tmax1 *SVRGROUP svg1 *SERVER emp_c *SERVICE FDLSELECT FDLUPDATE FDLDELETE FDLINSERT SHMKEY=70000, MAXUSER=200, MINCLH=1, MAXCLH=5, TPORTNO=8888, BLOCKTIME=200, TXTIME=200 TMAXDIR="/home/tmax", APPDIR="/home/tmax/appbin", PATHDIR="/home/tmax/path", TLOGDIR= "/home/tmax/log/tlog", SLOGDIR="/home/tmax/log/slog" ULOGDIR="/home/tmax/log/ulog" NODENAME=tmax1, DBNAME=ORACLE, OPENINFO="ORACLE_XA+Acc=P/scott/tiger+SesTm=60", TMSNAME = svg1_tms SVGNAME=svg1, MIN=1 SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c Tmax 4GL Programming Guide
165 III. Delphi Tmax 4GL Programming Guide
166 1.,.. C.. atmi Tmax Reference ManualTmax Programing Guide.. atmi.pas fdl.pas : atmi : Tmax 4GL Programming Guide
167 2. Delphi Sample,. tpstart TPSTART_T Tmax Tmax. : atmi.pas, fdl.pas, TuxSvc.pas. *** *** Atmi.dcu Atmi.pas EmployeeMgr.bpg EmployeeMgr.cfg EmployeeMgr.dof EmployeeMgr.dpr EmployeeMgr.exe EmployeeMgr.res Fdl.dcu Fdl.pas TuxSvc.pas main.dcu main.dfm main.pas : client. *** *** emp_c.mk : Makefile. emp_c.pc :. AIXOracle 9i. employee.m : Tmax *** *** demo.f : Field key bufferr. tmax. - Tmax : Tmax - : FIELD KEY BUFFER fdlc fdl - : tpcall() - : Tms AutoTransaction Tmax 4GL Programming Guide
168 - : FDLSELECT, FDLDELETE, FDLUPDATE, FDLINSERT - : SVRGROUP EmployeeMgrForm EmployeeMgrForm Caption= LabelErr TLabel Caption= BtnExit TButton Caption= BtnIns TButton Caption= BtnDel TButton Caption= BtnUdt TButton Caption= BtnSel TButton Caption= EditName EditEmpNo EditDept EditComm EditSal EditDate EditMgr EditJob MList BtnReturn TEdit TEdit TEdit TEdit TEdit TEdit TEdit TEdit TMemo TButton < > Tmax 4GL Programming Guide
169 < > main.pas Source unit main; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TEmployeeMgrForm = class(tform) LabelEmpNo: TLabel; LabelName: TLabel; EditEmpNo: TEdit; EditName: TEdit; GroupBoxInfo: TGroupBox; LabelJob: TLabel; LabelMgr: TLabel; LabelDate: TLabel; LabelSal: TLabel; EditJob: TEdit; EditMgr: TEdit; EditDate: TEdit; EditSal: TEdit; EditComm: TEdit; Tmax 4GL Programming Guide
170 EditDept: TEdit; LabelComm: TLabel; LabelDept: TLabel; BtnSel: TButton; BtnUdt: TButton; BtnDel: TButton; BtnIns: TButton; BtnExit: TButton; LabelErr: TLabel; MList: TMemo; BtnReturn: TButton; procedure BtnExitClick(Sender: TObject); procedure BtnSelClick(Sender: TObject); procedure BtnUdtClick(Sender: TObject); procedure BtnDelClick(Sender: TObject); procedure BtnInsClick(Sender: TObject); procedure tmaxstart(); procedure BtnReturnClick(Sender: TObject); procedure ViewErr( a:pointer ); { Private declarations } public { Public declarations } end; var EmployeeMgrForm: TEmployeeMgrForm; implementation // Atmi, Fdl uses Atmi, Fdl; const BufferSize = 1024; {$R *.DFM} // String {$H+} procedure TEmployeeMgrForm.tmaxStart(); var tpinfo: ptpstart; ret: integer; begin // atmi.pas. Tmax 4GL Programming Guide
171 // Function tmaxreadenv(a:pchar; b:pchar):integer; cdecl; external TmaxDLL; // Tmax Reference Manual. ret := tmaxreadenv('c:\tmax.env', 'aix5l389'); if ret < 0 then begin ShowMessage('tmaxreadenv Error'); Exit; end; // tpstart tpinfo := tpalloc('tpstart', NIL, 0); if tpinfo = Nil then begin ShowMessage('tpinfo tpalloc failed,' + StrPas(tpstrerror(gettperrno))); tpfree(tpinfo); Exit; end; // //. // // // tpinfo.usrname := 'tmax'; // // tpinfo.cltname := 'tmax'; // // tpinfo.flags := TPUNSOL_POLL; // Tmax ret := tpstart(tpinfo); if ret < 0 then begin ShowMessage('tpstart failed' + StrPas(tpstrerror(gettperrno))); tpfree(tpinfo); tpend(); Exit; end; // tpfree(tpinfo); end; //. procedure TEmployeeMgrForm.BtnExitClick(Sender: TObject); begin tpend(); close; end; Tmax 4GL Programming Guide
172 procedure TEmployeeMgrForm.BtnUdtClick(Sender: TObject); var sndbuf, revbuf: Pointer; ret, empno_l, mgr_l, deptno_l: longint; sal_f, comm_f: single; job_s, ename_s: pointer; rlen: integer; date_s: string[100]; begin tmaxstart(); // sndbuf := fballoc(1000, 10000); if sndbuf = Nil then begin ShowMessage('sndbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); fbfree(sndbuf); tpend(); Exit; end; // revbuf := fballoc(1000, 10000); if revbuf = Nil then begin ShowMessage('revbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); fbfree(revbuf); tpend(); Exit; end; empno_l := StrToInt(EditEmpNo.text); fbput(sndbuf, 0); ename_s := PChar(EditName.text); fbput(sndbuf, fbget_fldkey('ename'), ename_s, 0); job_s := PChar(EditJob.text); fbput(sndbuf, fbget_fldkey('job'), job_s, 0); mgr_l := StrToInt(EditMgr.text); fbput(sndbuf, 0); // date_s := PChar(EditDate.text); // fbput(sndbuf, 0); date_s := EditDate.text; Tmax 4GL Programming Guide
173 rlen := length(editdate.text); ret := fbchg_tu(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'DATE error!!!'; Exit; end; sal_f := StrToFloat(EditSal.text); fbput(sndbuf, 0); comm_f := StrToFloat(EditComm.text); fbput(sndbuf, 0); deptno_l := StrToInt(EditDept.text); fbput(sndbuf, 0); // ret := tx_begin(); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'tx_begin error'; Exit; end; // ret := tpcall('fdlupdate', 0); if ret < 0 then begin ViewErr(revbuf); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Exit; end; ret := tx_commit(); if ret < 0 then begin ShowMessage('tx_commit failed! ' + StrPas(tpstrerror(gettperrno))); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Exit; end; // fbfree(sndbuf); Tmax 4GL Programming Guide
174 fbfree(revbuf); tpend(); end; procedure TEmployeeMgrForm.BtnDelClick(Sender: TObject); var sndbuf, revbuf: Pointer; empno_l, ret: longint; rlen: integer; begin tmaxstart(); // sndbuf := fballoc(1000, 10000); if sndbuf = Nil then begin ShowMessage('sndbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); tpend(); Exit; end; // revbuf := fballoc(1000, 10000); if sndbuf = Nil then begin ShowMessage('sndbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); tpend(); Exit; end; empno_l := StrToInt(EditEmpNo.text); fbput(sndbuf, 0); // ret := tx_begin(); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'tx_begin error'; Exit; end; // ret := tpcall('fdldelete', 0); if ret < 0 then begin ViewErr(revbuf); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Tmax 4GL Programming Guide
175 Exit; end; ret := tx_commit(); if ret < 0 then begin ViewErr(revbuf); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Exit; end; // fbfree(sndbuf); fbfree(revbuf); tpend(); end; procedure TEmployeeMgrForm.BtnInsClick(Sender: TObject); var sndbuf, revbuf: Pointer; empno_l, mgr_l, deptno_l: longint; sal_f, comm_f: single; job_s, ename_s, date_s: string[100]; ret, rlen: integer; begin // tpstart tmaxstart(); // LabelErr.Caption := ''; sndbuf := fballoc(1000,10000); if sndbuf = Nil then begin LabelErr.Caption := 'sndbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno)); fbfree(sndbuf); tpend(); Exit; end; revbuf := fballoc(100,1000); if revbuf = Nil then begin LabelErr.Caption := 'revbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno)); fbfree(revbuf); tpend(); Exit; Tmax 4GL Programming Guide
176 end; empno_l := StrToInt(EditEmpNo.text); ret := fbput(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := 'EMPNO error!!!'; Exit; end; ename_s := EditName.text; rlen := length(editname.text); ret := fbchg_tu(sndbuf, fbget_fldkey('ename'),0,@ename_s[1], 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'ENAME error!!!'; Exit; end; job_s := EditJob.text; rlen := length(editjob.text); ret := fbchg_tu(sndbuf, fbget_fldkey('job'),0,@job_s[1], 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'JOB error!!!'; Exit; end; mgr_l := StrToInt(EditMgr.text); ret := fbput(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'MGR error!!!'; Exit; end; date_s := EditDate.text; rlen := length(editdate.text); ret := fbchg_tu(sndbuf, fbget_fldkey('date'),0,@date_s[1], 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'DATE error!!!'; Exit; end; sal_f := StrToFloat(EditSal.text); ret := fbput(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'SAL error!!!'; Exit; end; Tmax 4GL Programming Guide
177 comm_f := StrToFloat(EditComm.text); ret := fbput(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'COMM error!!!'; Exit; end; deptno_l := StrToInt(EditDept.text); ret := fbput(sndbuf, 0); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'DEPTNO error!!!'; Exit; end; // ret := tx_begin(); if ret = -1 then begin LabelErr.Caption := LabelErr.Caption + 'tx_begin error'; Exit; end; // ret := tpcall('fdlinsert', 0); if ret < 0 then begin ViewErr(revbuf); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Exit; end; ret := tx_commit(); if ret < 0 then begin ViewErr(revbuf); tx_rollback(); fbfree(sndbuf); fbfree(revbuf); tpend(); Exit; end; // fbfree(revbuf); fbfree(sndbuf); tpend(); Tmax 4GL Programming Guide
178 end; procedure TEmployeeMgrForm.BtnReturnClick(Sender: TObject); begin BtnReturn.Visible := false; MList.Visible := false; end; procedure TEmployeeMgrForm.ViewErr( a:pointer ); var types: PChar; codes: PChar; msgs: PChar; tmps: PChar; // Iret: Integer; begin // E_TYPE 9009 long - - // E_CODE 9010 long - - // E_MSG 9011 string - - // E_TMP 9012 long - - types := fbgetvals(a, fbget_fldkey('e_type'), 0); codes := fbgetvals(a, fbget_fldkey('e_code'), 0); msgs := fbgetvals(a, fbget_fldkey('e_msg'), 0); tmps := fbgetvals(a, fbget_fldkey('e_tmp'), 0); ShowMessage('Error Type : ' + types + ',Code : ' + codes + ',Message : ' + msgs + ',Tmp : ' + tmps); end; Tmax 4GL Programming Guide
179 //. procedure TEmployeeMgrForm.BtnSelClick(Sender: TObject); var sndbuf, revbuf: Pointer; empno_l, ret: longint; rlen: integer; varf: single; cnt_i, i: integer; empno_s, name_s, job_s, mgr_s, date_s, sal_s, comm_s, dept_s: string; output_s: string; init_s: string; begin // MList.Visible := true; BtnReturn.Visible := true; tmaxstart(); // sndbuf := fballoc(100,1000); if sndbuf = Nil then begin ShowMessage('sndbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); fbfree(sndbuf); Tmax 4GL Programming Guide
180 tpend(); Exit; end; // revbuf := fballoc(100,1000); if revbuf = Nil then begin ShowMessage('revbuf tpalloc failed, ' + StrPas(tpstrerror(gettperrno))); fbfree(revbuf); tpend(); Exit; end; empno_l := StrToInt(EditEmpNo.text); fbput(sndbuf, 0); // ret := tpcall('fdlselect', 0); if ret < 0 then begin ViewErr(revbuf); fbfree(sndbuf); fbfree(revbuf); init_s := #10#13#9#9#9'*********** ***********'#10#9'================================================== ==========='#10#9' COMM '#10#9'========================================================== ==='#10; output_s := init_s + ' '; MList.Lines.Text := output_s; tpend(); Exit; end; cnt_i := fbkeyoccur(revbuf, fbget_fldkey('empno')); for i := 0 to cnt_i -1 do begin empno_s := fbgetvals(revbuf, fbget_fldkey('empno'),i); name_s := fbgetvals(revbuf, fbget_fldkey('ename'),i); job_s := fbgetvals(revbuf, fbget_fldkey('job'),i); mgr_s := fbgetvals(revbuf, fbget_fldkey('mgr'),i); date_s := fbgetvals(revbuf, fbget_fldkey('date'),i); sal_s := fbgetvals(revbuf, fbget_fldkey('sal'),i); comm_s := fbgetvals(revbuf, fbget_fldkey('comm'),i); dept_s := fbgetvals(revbuf, fbget_fldkey('deptno'),i); output_s := output_s + ' ' + empno_s + #9 + name_s + #9 + job_s + Tmax 4GL Programming Guide
181 #9 + mgr_s + #9 + date_s + #9 + sal_s + #9 + comm_s + #9 + dept_s + #10 ; end; init_s := #10#13#9#9#9'*********** ***********'#10#9'================================================== ==========='#10#9' COMM '#10#9'========================================================== ==='#10; output_s := init_s + output_s; MList.Lines.Text := output_s; // fbfree(sndbuf); fbfree(revbuf); tpend(); end; Tmax 4GL Programming Guide
182 procedure TEmployeeMgrForm.ViewErr( a:pointer ); var types: PChar; codes: PChar; msgs: PChar; tmps: PChar; // Iret: Integer; begin // E_TYPE 9009 long - - // E_CODE 9010 long - - // E_MSG 9011 string - - // E_TMP 9012 long - - types := fbgetvals(a, fbget_fldkey('e_type'), 0); codes := fbgetvals(a, fbget_fldkey('e_code'), 0); msgs := fbgetvals(a, fbget_fldkey('e_msg'), 0); tmps := fbgetvals(a, fbget_fldkey('e_tmp'), 0); ShowMessage('Error Type : ' + types + ',Code : ' + codes + ',Message : ' + msgs + ',Tmp : ' + tmps); end; Tmax 4GL Programming Guide
183 demo.f DataBase EMP Table EMPNO NUMBER NOT NULL P1 ENAME VARCHAR(16) JOB VARCHAR(16) MGR NUMBER HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER Tmax 4GL Programming Guide
184 emp_c.pc Tmax 4GL Programming Guide
185 Tmax 4GL Programming Guide
186 Tmax 4GL Programming Guide
187 Tmax 4GL Programming Guide
188 Tmax 4GL Programming Guide
189 Tmax 4GL Programming Guide
190 } Tmax 4GL Programming Guide
191 emp_c.mk Tmax 4GL Programming Guide
192 tmconfig.m *DOMAIN dom1 *NODE tmax1 *SVRGROUP svg1 *SERVER emp_c *SERVICE FDLSELECT FDLUPDATE FDLDELETE FDLINSERT SHMKEY=70000, MAXUSER=200, MINCLH=1, MAXCLH=5, TPORTNO=8888, BLOCKTIME=200, TXTIME=200 TMAXDIR="/home/tmax", APPDIR="/home/tmax/appbin", PATHDIR="/home/tmax/path", TLOGDIR= "/home/tmax/log/tlog", SLOGDIR="/home/tmax/log/slog" ULOGDIR="/home/tmax/log/ulog" NODENAME=tmax1, DBNAME=ORACLE, OPENINFO="ORACLE_XA+Acc=P/scott/tiger+SesTm=60", TMSNAME = svg1_tms SVGNAME=svg1, MIN=1 SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c Tmax 4GL Programming Guide
193 IV. Visual Basic.net Tmax 4GL Programming Guide
194 1... atmi.vb : atmi fdl.vb : TmaxMacros.vb : WinApi.vb : windows Tmax. atmi Tmax Reference Manual Tmax Programming Guide.. Tmax 4GL Programming Guide
195 2. ErrorMsg Public Shared Function ErrorMsg (ByVal pbuffer As Integer, ByVal msg As String) As Integer TmaxMacros.vb. fieldkey STATLIN tpurcode MsgBox. msg MsgBox. pbuffer : msg : Dim lsndbuf, lrcvbuf As Integer Dim rlen, lret As Integer lret = tpcall("fdltoupper", lsndbuf, 0, lrcvbuf, rlen, TPNOFLAGS) If lret < 0 Then ErrorMsg(lrcvbuf, "FDLTOUPPER") End If integer : -1. FdlErrorMsg Tmax 4GL Programming Guide
196 FdlErrorMsg Public Shared Function FdlErrorMsg(ByVal msg As String) As Integer fdl. msg MsgBox. msg : Dim lsndbuf As Integer Dim lret As Integer lret = fbput(lsndbuf, fbget_fldkey("input"), txtsmallf.text, txtsmallf.textlength) If lret < 0 Then FdlErrorMsg("fbput") End If integer : -1. ErrorMsg Tmax 4GL Programming Guide
197 PUTINT Public Shared Function PUTINT(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Integer) As Integer Tmax fdl fbchg_tu() nth fldname value. value Integer. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Integer Dim lsndbuf As Integer Dim lret As Integer Dim tempi As Integer lsndbuf = fballoc(10, 100) tempi = CInt(txtInt.Text) lret = PUTINT(lsndbuf, "INTDATA", 2, tempi) If lret < 0 Then error processing End If integer : -1. PUTLONG, PUTDOUBLE, PUTFLOAT, PUTSHORT, PUTCAR3, PUTVAR, PUTCHR Tmax 4GL Programming Guide
198 PUTLONG Public Shared Function PUTLONG(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Long) As Integer Tmax fdl fbchg_tu() nth fldname value. valuelong. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Long Dim lsndbuf As Integer Dim lret As Integer Dim templ As Long lsndbuf = fballoc(10, 100) templ = CLong(txtLong.Text) lret = PUTLONG(lsndbuf, "LONGDATA", 2, templ) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTDOUBLE, PUTFLOAT, PUTSHORT, PUTCAR3, PUTVAR, PUTCHR Tmax 4GL Programming Guide
199 PUTDOUBLE Public Shared Function PUTDOUBLE(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Double) As Integer Tmax fdl fbchg_tu() nth fldname value. valuedouble. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Double Dim lsndbuf As Integer Dim lret As Integer Dim tempd As Double lsndbuf = fballoc(10, 100) tempd = CDbl(txtDouble.Text) lret = PUTDOUBLE(lsndbuf, "DOUBLEDATA", 2, tempd) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTLONG, PUTFLOAT, PUTSHORT, PUTCAR3, PUTVAR, PUTCHR Tmax 4GL Programming Guide
200 PUTFLOAT Public Shared Function PUTFLOAT(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Single) As Integer Tmax fdl fbchg_tu() nth fldname value. valuesingle. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : String Dim lsndbuf As Integer Dim lret As Integer Dim temps As Single lsndbuf = fballoc(10, 100) temps = CSng(txtSingle.Text) lret = PUTFLOAT(lsndbuf, "TAPE_SENT", 2, temps) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTLONG, PUTSHORT, PUTDOUBLE, PUTCAR3, PUTVAR, PUTCHR Tmax 4GL Programming Guide
201 PUTSHORT Public Shared Function PUTSHORT(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Short) As Integer Tmax fdl fbchg_tu() nth fldname value. valueshort. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Short Dim lsndbuf As Integer Dim lret As Integer Dim temps As Short lsndbuf = fballoc(10, 100) temps = CShort(txtShort.Text) lret = PUTSHORT(lsndbuf, "SUPER_NUM", 2, temps) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTLONG, PUTFLOAT, PUTDOUBLE, PUTCAR3, PUTVAR, PUTCHR Tmax 4GL Programming Guide
202 PUTCAR3 Public Shared Function PUTCAR3(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value() As Byte, _ ByVal len As Integer) As Integer Tmax fdl fbchg_tu() nth fldname value. value Byte array. binary. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Binary len : Binary Dim lsndbuf As Integer Dim lret As Integer Dim tempb() As Short Dim fs As FileStream Dim br As BinaryReader Dim FilePath As String lsndbuf = fballoc(10, 100) fs = New FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.None) br = New BinaryReader(fs) ReDim tempb(cint(fs.length)) br.read(tempbr, 0, CInt(fs.Length)) br.close() fs.close() lret = PUTCAR3(lsendbuf, "TP_BITMAP", 0, tempb, Cint(fs.Length)) If lret < 0 Then error processing End If Tmax 4GL Programming Guide
203 integer : -1. PUTINT, PUTLONG, PUTSHORT, PUTDOUBLE, PUTFLOAT, PUTVAR, PUTCHR Tmax 4GL Programming Guide
204 PUTVAR Public Shared Function PUTVAR(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByVal value As String) As Integer Tmax fdl fbchg_tu() nth fldname value. valuestring. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : String Dim lsndbuf As Integer Dim lret As Integer Dim temps As String lsndbuf = fballoc(10, 100) temps = txtstring.text lret = PUTVAR(lsndbuf, " FILENAME ", 2, temps) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTLONG, PUTSHORT, PUTDOUBLE, PUTFLOAT, PUTCAR3, PUTCHR Tmax 4GL Programming Guide
205 PUTCHR Public Shared Function PUTCHR(ByVal pfbuf As Integer, _ ByVal fldname As String, _ ByVal nth As Integer, _ ByRef value As Char, _ ByVal len As Integer) As Integer Tmax fdl fbchg_tu() nth fldname value. valuechar. fbchg_tu() (nth) (value),. pfbuf : tpalloc() fballoc() fldname : (pfbuf) nth : value : Char len Char Dim lsndbuf As Integer Dim lret As Integer Dim tempc As Char lsndbuf = fballoc(10, 100) tempc = New String("a").ToCharArray() lret = PUTCHR(lsndbuf, "CHR", 0, tempc(0), 1) If lret < 0 Then error processing End If integer : -1. PUTINT, PUTLONG, PUTSHORT, PUTDOUBLE, PUTFLOAT, PUTCAR3, PUTVAR Tmax 4GL Programming Guide
206 PUTCAR Public Shared Function PUTCAR(ByVal pbuffer As Integer, _ ByVal value As String, _ ByVal len As Integer) As Integer carray tpalloc(). PBuffer : tpalloc () Value : String Len : String Dim lsndbuf As Integer Dim rlet As Integer Dim temps As String lsndbuf = tpalloc( CARRAY,, 0) temps = txtstring.text lret = PUTCAR(lsndbuf, temps, temps.length) If lret < 0 Then MsgBox( PUTCAR fail [ & tpstrerror(gettperrno()) & ] ) End If integer : -1. GETCAR Tmax 4GL Programming Guide
207 PUTCAR2 Public Shared Function PUTCAR2(ByVal pbuffer As Integer, _ ByRef value() As Byte, _ ByVal len As Integer) As Integer binary tpalloc(). pbuffer : tpalloc() value : Binary len : Binary Dim lsndbuf As Integer Dim lret As Integer Dim tempb() As Short Dim fs As FileStream Dim br As BinaryReader Dim FilePath As String lsndbuf = tpalloc( CARRAY,, 0) fs = New FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.None) br = New BinaryReader(fs) ReDim tempb(cint(fs.length)) br.read(tempbr, 0, CInt(fs.Length)) br.close() fs.close() lret = PUTCAR2(lsendbuf, tempb, Cint(fs.Length)) If lret < 0 Then MsgBox( PUTCAR2 fail [ & tpstrerror(gettperrno()) & ] ) End If integer : -1. GETCAR2 Tmax 4GL Programming Guide
208 GETINT Public Shared Function GETINT(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Integer) As Integer Tmax fdl fbget_tu() fldname nth value. value Integer. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim tempi As Integer lsndbuf = fballoc(10, 100) lret = GETINT(lsndbuf, "INTDATA", 0, tempi) If lret < 0 Then error processing End If integer : -1. GETLONG, GETDOUBLE, GETFLOAT, GETSHORT, GETCAR3, GETVAR, GETCHR Tmax 4GL Programming Guide
209 GETLONG Public Shared Function GETLONG(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Long) As Integer Tmax fdl fbget_tu() fldname nth value. value Long. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim templ As Long lsndbuf = fballoc(10, 100) lret = GETINT(lsndbuf, "LONGDATA", 0, templ) If lret < 0 Then error processing End If integer : -1. GETINT, GETDOUBLE, GETFLOAT, GETSHORT, GETCAR3, GETVAR, GETCHR Tmax 4GL Programming Guide
210 GETDOUBLE Public Shared Function GETINT(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Double) As Integer Tmax fdl fbget_tu() fldname nth value. value Double. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim tempid As Double lsndbuf = fballoc(10, 100) lret = GETDOUBLE(lsndbuf, "DOUBLEDATA", 0, tempd) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETFLOAT, GETSHORT, GETCAR3, GETVAR, GETCHR Tmax 4GL Programming Guide
211 GETFLOAT Public Shared Function GETFLOAT(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Single) As Integer Tmax fdl fbget_tu() fldname nth value. value Single. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim temps As Single lsndbuf = fballoc(10, 100) lret = GETFLOAT(lsndbuf, "TAPE_SENT", 0, temps) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETDOUBLE, GETSHORT, GETCAR3, GETVAR, GETCHR Tmax 4GL Programming Guide
212 GETSHORT Public Shared Function GETSHORT(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Short) As Integer Tmax fdl fbget_tu() fldname nth value. value Short. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim temps As Short lsndbuf = fballoc(10, 100) lret = GETSHORT(lsndbuf, "SUPER_NUM", 0, temps) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETDOUBLE, GETFLOAT, GETCAR3, GETVAR, GETCHR Tmax 4GL Programming Guide
213 GETCAR3 Public Shared Function GETCAR3(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value() As Byte, _ ByRef len As Integer) As Integer Tmax fdl fbget_tu() fldname nth value. valuebyte array. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : len : Dim lsndbuf As Integer Dim lret As Integer Dim tempb() As Byte Dim len As Integer lsndbuf = fballoc(10, 100) lret = GETCAR3(lsndbuf, "TP_BITMAP", 0, tempb, len) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETDOUBLE, GETFLOAT, GETSHORT, GETVAR, GETCHR Tmax 4GL Programming Guide
214 GETVAR Public Shared Function GETVAR(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As String) As Integer Tmax fdl fbget_tu() fldname nth value. value String. pfbuf : tpalloc() fballoc() fldname : (pfbuf). nth : value : Dim lsndbuf As Integer Dim lret As Integer Dim temps As String lsndbuf = fballoc(10, 100) lret = GETVAR(lsndbuf, "FILENAM", 0, temps) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETDOUBLE, GETFLOAT, GETSHORT, GETCAR3, GETCHR Tmax 4GL Programming Guide
215 GETCHR Public Shared Function GETCHR(ByVal pfbuf As Integer, _ ByRef fldname As String, _ ByVal nth As Integer, _ ByRef value As Char, _ ByRef len As Integer) As Integer Tmax fdl fbget_tu() fldname nth value. value CARRAY. GETVAR STINGCARRAY. CARRAY Len. STRING NULL. PFBUF : tpalloc() fballoc() fldname : (pfbuf). Nth : Value : Len : Dim lsndbuf As Integer Dim lret As Integer Dim tempc As Char Dim len As Integer lsndbuf = fballoc(10, 100) lret = GETCHR(lsndbuf, "CHR", 0, tempc, len) If lret < 0 Then error processing End If integer : -1. GETINT, GETLONG, GETDOUBLE, GETFLOAT, GETSHORT, GETCAR3, GETVAR Tmax 4GL Programming Guide
216 GETCAR Public Shared Function GETCAR(ByVal pbuffer As Integer, _ ByRef value As String, _ ByVal len As Integer) As Integer String tpalloc(). pbuffer : tpalloc() value : len : Dim lsndbuf As Integer Dim lret As Integer Dim temps As String lsndbuf = tpalloc( STRING,, 0) lret = GETCAR(lrcvbuf, temps, 10) If lret < 0 Then error processing End If integer : -1. PUTCAR Tmax 4GL Programming Guide
217 GETCAR2 Public Shared Function GETCAR2(ByVal pbuffer As Integer, _ ByRef value() As Byte, _ ByVal len As Integer) As Integer Binary tpalloc(). pbuffer : tpalloc() value : len : Dim lsndbuf As Integer Dim lret As Integer Dim tempb() As Byte lsndbuf = tpalloc( STRING,, 0) lret = GETCAR2(lrcvbuf, tempb, 1024) If lret < 0 Then error processing End If integer : -1. PUTCAR2 Tmax 4GL Programming Guide
218 FilltpstartBuf Public Shared Function FilltpstartBuf(ByVal pbuffer As Integer, _ ByVal startinfop As tpstart_t) As Integer Tmax tpstart_t. pbuffer : tpalloc() startinfo : tpstart_t Dim lsndbuf As Integer Dim lret As Integer Dim cinfo As tpstart_t lsndbuf = tpalloc("tpstart", "", 0) If lsndbuf = 0 Then error processing End If cinfo.cltname = "tmax" + Chr(0) cinfo.usrname = "tmax" + Chr(0) cinfo.dompwd = "xamt" + Chr(0) cinfo.usrpwd = "batman" + Chr(0) cinfo.flags = TPUNSOL_HND lret = FilltpstartBuf(lsndbuf, cinfo) If ret < 0 Then error processing End If ret = tpstart(lsndbuf) If ret < 0 Then error processing End integer : Tmax 4GL Programming Guide
219 3. Visual Basic.NET Sample account id,,,. : atmi.vb, fdl.vb, TmaxMacros.vb, WinAPI.vb. *** VB.net *** AssemblyInfo.vb CodeFile1.vb EmployeeGrid.resx EmployeeGrid.vb :. EmployeeMgr.resx EmployeeMgr.sln EmployeeMgr.suo EmployeeMgr.vb : Main.,,,. EmployeeMgr.vbproj EmployeeMgr.vbproj.user TmaxMacros.vb WinAPI.vb atmi.vb fdl.vb *** *** emp_c.mk : Makefile. emp_c.pc :. AIXOracle 9i. employee.m : Tmax *** *** demo.f : Field key bufferr. tmax. Option Explicit ' ' Private Sub BtnReturn_Click() Hide EmployeeMgr.Show End Sub ' Click ' Private Sub Form_Activate() ' tpstart ' Tmax 4GL Programming Guide
220 tmaxstart Dim Isendbuf As Long Dim Irecvbuf As Long Dim Irbuflen As Long Dim Iret As Integer Dim text As String Dim value As Long Dim dvalue As Double Dim svalue As Single Dim lenl As Long Dim inits, outputs As String Dim empnos, enames, jobs, mgrs, dates, sals, comms, deptnos As String Dim cntl As Long Dim eno As Long Dim txbool As Integer ' 1, 0 ' ' tpstart ' tmaxstart ' ' txbool = 0 inits = vbcrlf & vbtab & vbtab & vbtab & "***** *****" & vbcrlf & vbtab & "=========================================================" & vbcrlf & vbtab & " COMM " & vbcrlf & vbtab & "=========================================================" & vbcrlf & vbcrlf If EmployeeMgr.EditEmpNo.text = "" Then MsgBox "." Hide EmployeeMgr.Show Exit Sub End If ' ' Isendbuf = fballoc(100, 1024) If Isendbuf = Null Then TmaxError ("fballoc") Call fbfree(isendbuf) tmaxend Exit Sub End If ' ' Tmax 4GL Programming Guide
221 Irecvbuf = fballoc(100, 1024) If Irecvbuf = Null Then TmaxError ("fballoc") Call fbfree(irecvbuf) tmaxend Exit Sub End If '. eno = Trim(EmployeeMgr.EditEmpNo.text) Iret = fbput(byval Isendbuf, ByVal fbget_fldkey("empno"), eno, ByVal lenl) If Iret = -1 Then Call ExitSub(txbool, Isendbuf, Irecvbuf) End If ' ' Iret = tpcall(byval "FDLSELECT", ByVal Isendbuf, ByVal 0, Irecvbuf, Irbuflen, ByVal 0) If Iret = -1 Then ViewErr (Irecvbuf) Call ExitSub(txbool, Isendbuf, Irecvbuf) End If cntl = fbkeyoccur(byval Irecvbuf, ByVal fbget_fldkey("empno")) Dim i As Long For i = 0 To cntl - 1 Iret = GETLONG(ByVal Irecvbuf, "EMPNO", i, value) If Iret = -1 Then TmaxError ("GETLONG(EMPNO)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If empnos = value Iret = GETVAR(ByVal Irecvbuf, "ENAME", i, text) If Iret = -1 Then TmaxError ("GETVAR(ENAME)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If enames = text Iret = GETVAR(ByVal Irecvbuf, "JOB", i, text) If Iret = -1 Then TmaxError ("GETVAR(JOB)") Call ExitSub(txbool, Isendbuf, Irecvbuf) Tmax 4GL Programming Guide
222 End If jobs = text Iret = GETLONG(ByVal Irecvbuf, "MGR", i, value) If Iret = -1 Then TmaxError ("GETLONG(MGR)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If mgrs = value Iret = GETVAR(ByVal Irecvbuf, "DATE", i, text) If Iret = -1 Then TmaxError ("GETVAR(DATE)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If dates = text ' SAL float. ' ' comm.bas. ' Iret = fbget_tu(byval Irecvbuf, ByVal fbget_fldkey("sal"), i, svalue, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If sals = svalue Iret = GETFLOAT(ByVal Irecvbuf, "COMM", i, svalue) If Iret = -1 Then TmaxError ("GETFLOAT(COMM)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If comms = svalue Iret = GETLONG(ByVal Irecvbuf, "DEPTNO", i, value) If Iret = -1 Then TmaxError ("GETLONG(DEPTNO)") Call ExitSub(txbool, Isendbuf, Irecvbuf) End If deptnos = value & vbcrlf outputs = outputs & " " & empnos & vbtab & enames & vbtab & jobs & vbtab & mgrs & vbtab & dates & vbtab & sals & vbtab & comms & vbtab & deptnos Next i InfoText.text = inits & outputs Tmax 4GL Programming Guide
223 ' ' LabelErr.Caption = "SAL = " & dvalue Call ExitSub(txbool, Isendbuf, Irecvbuf) End Sub Private Sub ExitSub(txbool As Integer, Isendbuf As Long, Irecvbuf As Long) If txbool = 1 Then tx_rollback End If ' ' Call fbfree(byval Isendbuf&) Call fbfree(byval Irecvbuf&) ' tpend ' tmaxend Exit Sub End Sub ' tpstart ' Private Sub tmaxstart() Dim ret As Integer '. ' ' atmi.bas. ' ' Declare Function tmaxreadenv Lib "TMAX4GL.DLL" (ByVal envfile As String, ByVal label As String) As Long ' ' Tmax Reference Manual. ' ret = tmaxreadenv("c:\tmax.env", "aix5l389") If ret < 0 Then TmaxError ("tmaxreadenv") Exit Sub End If ret = tpstart(byval 0&) If ret = -1 Then LabelErr.Caption = "tpstart error = " & gettperrno() TmaxError ("tpstart") Exit Sub Else LabelErr.Caption = "tpstart return value = " & ret & " tpstart success" End If Tmax 4GL Programming Guide
224 End Sub ' tpend ' Private Sub tmaxend() Dim ret As Integer ret = tpend() If ret = -1 Then LabelErr.Caption = "tpend error = " & gettperrno() TmaxError ("tpend") Exit Sub Else LabelErr.Caption = "tpreturn return value = " & ret End If End Sub ' ' Private Sub ViewErr(ByVal a As Long) 'E_TYPE 9009 long - - 'E_CODE 9010 long - - 'E_MSG 9011 string - - 'E_TMP 9012 long - - Dim typel As Long Dim codel As Long Dim msgs As String Dim tmpl As Long Dim Iret As Integer Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_type"), 0, typel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_code"), 0, codel, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If Iret = GETVAR(ByVal a, "E_MSG", 0, msgs) Iret = fbget_tu(byval a, ByVal fbget_fldkey("e_tmp"), 0, tmpl, 0) If Iret = -1 Then FdlErrorMsg ("fbget_tu") Exit Sub End If MsgBox ("Error Type : " & typel & ",Code : " & codel & ",Message : " & msgs & Tmax 4GL Programming Guide
225 ",Tmp : " & tmpl) End Sub - Tmax : tpstart_t - : FIELD KEY BUFFER fdlc fdl - : tpcall() - : Tms AutoTransaction - : FDLSELECT, FDLINSERT - : SVRGROUP Tmax 4GL Programming Guide
226 EmployeeMgr EmployeeMgr Caption= LabelErr Caption= BtnExit BtnIns BtnDel BtnUdt BtnSel EditName EditEmpNo EditDept EditComm EditSal EditDate EditMgr EditJob Caption= Caption= Caption= Caption= Caption= < > Tmax 4GL Programming Guide
227 < > EmployeeMgr.vb source Tmax 4GL Programming Guide
228 Tmax 4GL Programming Guide
229 Tmax 4GL Programming Guide
230 Tmax 4GL Programming Guide
231 Tmax 4GL Programming Guide
232 Tmax 4GL Programming Guide
233 Tmax 4GL Programming Guide
234 Tmax 4GL Programming Guide
235 Tmax 4GL Programming Guide
236 Tmax 4GL Programming Guide
237 EmployeeGrid EmployeeGrid Caption= ListTextBox MultiLine=True BtnReturn Caption= < > < > EmployeeGrid.frm Source Tmax 4GL Programming Guide
238 Tmax 4GL Programming Guide
239 Tmax 4GL Programming Guide
240 Tmax 4GL Programming Guide
241 Tmax 4GL Programming Guide
242 Tmax 4GL Programming Guide
243 Tmax 4GL Programming Guide
244 Tmax 4GL Programming Guide
245 Tmax 4GL Programming Guide
246 Tmax 4GL Programming Guide
247 Tmax 4GL Programming Guide
248 Tmax 4GL Programming Guide
249 Tmax 4GL Programming Guide
250 demo.f DataBase EMP Table EMPNO NUMBER NOT NULL P1 ENAME VARCHAR(16) JOB VARCHAR(16) MGR NUMBER HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER Tmax 4GL Programming Guide
251 emp_c.pc Tmax 4GL Programming Guide
252 Tmax 4GL Programming Guide
253 Tmax 4GL Programming Guide
254 Tmax 4GL Programming Guide
255 Tmax 4GL Programming Guide
256 Tmax 4GL Programming Guide
257 } Tmax 4GL Programming Guide
258 emp_c.mk Tmax 4GL Programming Guide
259 tmconfig.m *DOMAIN dom1 *NODE tmax1 *SVRGROUP svg1 *SERVER emp_c *SERVICE FDLSELECT FDLUPDATE FDLDELETE FDLINSERT SHMKEY=70000, MAXUSER=200, MINCLH=1, MAXCLH=5, TPORTNO=8888, BLOCKTIME=200, TXTIME=200 TMAXDIR="/home/tmax", APPDIR="/home/tmax/appbin", PATHDIR="/home/tmax/path", TLOGDIR= "/home/tmax/log/tlog", SLOGDIR="/home/tmax/log/slog" ULOGDIR="/home/tmax/log/ulog" NODENAME=tmax1, DBNAME=ORACLE, OPENINFO="ORACLE_XA+Acc=P/scott/tiger+SesTm=60", TMSNAME = svg1_tms SVGNAME=svg1, MIN=1 SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c SVRNAME= emp_c Tmax 4GL Programming Guide
260 V. C#.net Tmax 4GL Programming Guide
261 1... Atmi.cs : atmi Fdl.cs : Tx.cs : WinApi.cs : windows TmaxApi.cs RQ, Tmax. atmi Tmax Reference ManualTmax Programing Guide C#. Tmax 4GL Programming Guide
262 2. C#.NET Sample,,,,,,,. 8 singleline editor1, 6., 50.,,,. 4GL_Sample.sln : Form1.csTmax Library client emp_c.pc : service (Oracle ) demo.f : Field Key Buffer emp_c.mk: Makefile tmconfig.m : Tmax - Tmax Library : Atmi.cs, Fdl.cs, Tx.cs, WinApi.cs, TmaxApi.cs - : FIELD KEY BUFFER fdlc fdl - : pb_tpcall() - :,,, - Tmax :,. - : FDLSELECT, FDLUPDATE, FDLDELETE, FDLINSERT - : SVRGROUP ( XA ) SVRGROUP Tmax 4GL Programming Guide
263 < > < > Tmax 4GL Programming Guide
Tmax COBOL Guide : TMCG : Tmax 3.8 : July 31, 2003 : Sep 20, 2003
Tmax COBOL Guide : TMCG-0731-03-380 : Tmax 3.8 : July 31, 2003 : Sep 20, 2003 Tmax COBOL Guide Tmax 3.8 Tmax COBOL Guide Tmax COBOL Guide Tmax COBOL Guide 1. 1.1... 7 1.2 Sample file... 8 1.2.1 Sample
More information13주-14주proc.PDF
12 : Pro*C/C++ 1 2 Embeded SQL 3 PRO *C 31 C/C++ PRO *C NOT! NOT AND && AND OR OR EQUAL == = SQL,,, Embeded SQL SQL 32 Pro*C C SQL Pro*C C, C Pro*C, C C 321, C char : char[n] : n int, short, long : float
More informationTmax FDL Reference Manual : TMFR : Tmax 3.8 : Sep 20, 2003 : Sep 20, 2003
Tmax FDL Reference Manual : TMFR-0702-08-380 : Tmax 3.8 : Sep 20, 2003 : Sep 20, 2003 Tmax FDL Reference Manual Tmax 3.8 1 2 Copyright (c) 2001 Tmax Soft Co., Ltd. All Rights Reserved.,,, Tmax soft.,,,.....
More informationTmax Getting Started Guide Tmax 3.8 Tmax Getting Started Guide
Tmax Getting Started Guide : TMGS-0731-05-380 : Tmax 3.8 : July 31, 2003 : Sep 20, 2003 Tmax Getting Started Guide Tmax 3.8 Tmax Getting Started Guide Copyright (c) 2001 Tmax Soft Co., Ltd. All Rights
More informationDocsPin_Korean.pages
Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google
More informationORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O
Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration
More informationuntitled
PowerBuilder 連 Microsoft SQL Server database PB10.0 PB9.0 若 Microsoft SQL Server 料 database Profile MSS 料 (Microsoft SQL Server database interface) 行了 PB10.0 了 Sybase 不 Microsoft 料 了 SQL Server 料 PB10.0
More informationJEUS WebT Copyright 2004 Tmax Soft Co., Ltd. All Rights Reserved.
JEUS WebT Copyright 2004 Tmax Soft Co, Ltd All Rights Reserved Copyright Notice Copyright 2004 Tmax Soft Co, Ltd All Rights Reserved Tmax Soft Co, Ltd 946-1 18 )135-708 Restricted Rights Legend This software
More informationSRC PLUS 제어기 MANUAL
,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO
More informationuntitled
Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.
More informationCD-RW_Advanced.PDF
HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5
More information<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>
i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,
More informationSMB_ICMP_UDP(huichang).PDF
SMB(Server Message Block) UDP(User Datagram Protocol) ICMP(Internet Control Message Protocol) SMB (Server Message Block) SMB? : Microsoft IBM, Intel,. Unix NFS. SMB client/server. Client server request
More informationPowerPoint 프레젠테이션
(Host) set up : Linux Backend RS-232, Ethernet, parallel(jtag) Host terminal Target terminal : monitor (Minicom) JTAG Cross compiler Boot loader Pentium Redhat 9.0 Serial port Serial cross cable Ethernet
More information목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate
ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition
More informationT100MD+
User s Manual 100% ) ( x b a a + 1 RX+ TX+ DTR GND TX+ RX+ DTR GND RX+ TX+ DTR GND DSR RX+ TX+ DTR GND DSR [ DCE TYPE ] [ DCE TYPE ] RS232 Format Baud 1 T100MD+
More information제목을 입력하세요.
1. 4 1.1. SQLGate for Oracle? 4 1.2. 4 1.3. 5 1.4. 7 2. SQLGate for Oracle 9 2.1. 9 2.2. 10 2.3. 10 2.4. 13 3. SQLGate for Oracle 15 3.1. Connection 15 Connect 15 Multi Connect 17 Disconnect 18 3.2. Query
More informationthesis
( Design and Implementation of a Generalized Management Information Repository Service for Network and System Management ) ssp@nile nile.postech.ac..ac.kr DPE Lab. 1997 12 16 GMIRS GMIRS GMIRS prototype
More informationPowerPoint 프레젠테이션
@ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program
More informationInterstage5 SOAP서비스 설정 가이드
Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service
More information6주차.key
6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More informationDeok9_Exploit Technique
Exploit Technique CodeEngn Co-Administrator!!! and Team Sur3x5F Member Nick : Deok9 E-mail : DDeok9@gmail.com HomePage : http://deok9.sur3x5f.org Twitter :@DDeok9 > 1. Shell Code 2. Security
More informationPowerPoint 프레젠테이션
@ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field
More information슬라이드 1
/ 유닉스시스템개요 / 파일 / 프로세스 01 File Descriptor file file descriptor file type unix 에서의파일은단지바이트들의나열임 operating system 은파일에어떤포맷도부과하지않음 파일의내용은바이트단위로주소를줄수있음 file descriptor 는 0 이나양수임 file 은 open 이나 creat 로 file
More informationuntitled
Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II
More informationMAX+plus II Getting Started - 무작정따라하기
무작정 따라하기 2001 10 4 / Version 20-2 0 MAX+plus II Digital, Schematic Capture MAX+plus II, IC, CPLD FPGA (Logic) ALTERA PLD FLEX10K Series EPF10K10QC208-4 MAX+plus II Project, Schematic, Design Compilation,
More informationOPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block
More informationchap7.key
1 7 C 2 7.1 C (System Calls) Unix UNIX man Section 2 C. C (Library Functions) C 1975 Dennis Ritchie ANSI C Standard Library 3 (system call). 4 C?... 5 C (text file), C. (binary file). 6 C 1. : fopen( )
More informationMicrosoft Word - Tmax Application Development Guide.doc
Tmax Application Development Guide Copyright 2000 TmaxSoft Co., Ltd. All Rights Reserved Copyright Notice Copyright 2000 TmaxSoft Co., Ltd. All Rights Reserved. TmaxSoft Co., Ltd. 대한민국서울시강남구대치동 946-1 글라스타워
More informationuntitled
(shared) (integrated) (stored) (operational) (data) : (DBMS) :, (database) :DBMS File & Database - : - : ( : ) - : - : - :, - DB - - -DBMScatalog meta-data -DBMS -DBMS - -DBMS concurrency control E-R,
More information歯처리.PDF
E06 (Exception) 1 (Report) : { $I- } { I/O } Assign(InFile, InputName); Reset(InFile); { $I+ } { I/O } if IOResult 0 then { }; (Exception) 2 2 (Settling State) Post OnValidate BeforePost Post Settling
More informationETL_project_best_practice1.ppt
ETL ETL Data,., Data Warehouse DataData Warehouse ETL tool/system: ETL, ETL Process Data Warehouse Platform Database, Access Method Data Source Data Operational Data Near Real-Time Data Modeling Refresh/Replication
More informationPCServerMgmt7
Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network
More information목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE
ALTIBASE HDB 6.3.1.10.1 Patch Notes 목차 BUG-45710 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG-45730 ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG-45760 ROLLUP/CUBE 절을포함하는질의는 SUBQUERY REMOVAL 변환을수행하지않도록수정합니다....
More informationbn2019_2
arp -a Packet Logging/Editing Decode Buffer Capture Driver Logging: permanent storage of packets for offline analysis Decode: packets must be decoded to human readable form. Buffer: packets must temporarily
More informationAPOGEE Insight_KR_Base_3P11
Technical Specification Sheet Document No. 149-332P25 September, 2010 Insight 3.11 Base Workstation 그림 1. Insight Base 메인메뉴 Insight Base Insight Insight Base, Insight Base Insight Base Insight Windows
More information목차 1. 환경변수 OS별환경변수설정 ESQL 시작 ESQL 프로그램생성젃차 오라클 Pro*C 젂환 Precompiler 변경 확장자 *.pc를 *.tbc로변경
개발및운영 Tibero ProC 전환및 Tmax 설정 2014. 05. 16. 목차 1. 환경변수... 3 1.1. OS별환경변수설정... 3 2. ESQL 시작... 4 2.1. ESQL 프로그램생성젃차... 4 3. 오라클 Pro*C 젂환... 5 3.1 Precompiler 변경... 5 3.2 확장자 *.pc를 *.tbc로변경... 5 3.3 티베로젂환시주의사항...
More information1217 WebTrafMon II
(1/28) (2/28) (10 Mbps ) Video, Audio. (3/28) 10 ~ 15 ( : telnet, ftp ),, (4/28) UDP/TCP (5/28) centralized environment packet header information analysis network traffic data, capture presentation network
More informationJavascript.pages
JQuery jquery part1 JavaScript : e-mail:leseraphina@naver.com http://www.webhard.co.kr I.? 2 ......,,. : : html5 ; ; .
More information歯sql_tuning2
SQL Tuning (2) SQL SQL SQL Tuning ROW(1) ROW(2) ROW(n) update ROW(2) at time 1 & Uncommitted update ROW(2) at time 2 SQLDBA> @ UTLLOCKT WAITING_SESSION TYPE MODE_REQUESTED MODE_HELD LOCK_ID1
More informations SINUMERIK 840C Service and User Manual DATA SAVING & LOADING & & /
SINUMERIK 840C Service and Uer Manual DATA SAVING & LOADING & & / / NC, RS232C /. NC NC / Computer link () Device ( )/PC / / Print erial Data input RS232C () Data output Data management FLOPPY DRIVE, FLOPPY
More informationAnalytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras
Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Crash Unity SDK... Log & Crash Search. - Unity3D v4.0 ios
More informationChap7.PDF
Chapter 7 The SUN Intranet Data Warehouse: Architecture and Tools All rights reserved 1 Intranet Data Warehouse : Distributed Networking Computing Peer-to-peer Peer-to-peer:,. C/S Microsoft ActiveX DCOM(Distributed
More informationOrcad Capture 9.x
OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd
More informationuntitled
CAN BUS RS232 Line Ethernet CAN H/W FIFO RS232 FIFO IP ARP CAN S/W FIFO TERMINAL Emulator COMMAND Interpreter ICMP TCP UDP PROTOCOL Converter TELNET DHCP C2E SW1 CAN RS232 RJ45 Power
More information강의10
Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced
More informationMS-SQL SERVER 대비 기능
Business! ORACLE MS - SQL ORACLE MS - SQL Clustering A-Z A-F G-L M-R S-Z T-Z Microsoft EE : Works for benchmarks only CREATE VIEW Customers AS SELECT * FROM Server1.TableOwner.Customers_33 UNION ALL SELECT
More informationI T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r
I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r -------------------------------------------------------------------- -- 1. : ts_cre_bonsa.sql -- 2. :
More informationCopyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper
Windows Netra Blade X3-2B( Sun Netra X6270 M3 Blade) : E37790 01 2012 9 Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs,
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Designer Getting Started 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Designer
More informationThe_IDA_Pro_Book
The IDA Pro Book Hacking Group OVERTIME force (forceteam01@gmail.com) GETTING STARTED WITH IDA IDA New : Go : IDA Previous : IDA File File -> Open Processor type : Loading Segment and Loading Offset x86
More informationCPX-E-EC_BES_C_ _ k1
CPX-E CPX-E-EC EtherCAT 8071155 2017-07 [8075310] CPX-E-EC CPX-E-EC-KO EtherCAT, TwinCAT (). :, 2 Festo CPX-E-EC-KO 2017-07 CPX-E-EC 1... 4 1.1... 4 1.2... 4 1.3... 4 1.4... 5 1.5... 5 2... 6 2.1... 6
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Designer Getting Started 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Designer
More information초보자를 위한 C# 21일 완성
C# 21., 21 C#., 2 ~ 3 21. 2 ~ 3 21.,. 1~ 2 (, ), C#.,,.,., 21..,.,,, 3. A..,,.,.. Q&A.. 24 C#,.NET.,.,.,. Visual C# Visual Studio.NET,..,. CD., www. TeachYour sel f CSharp. com., ( )., C#.. C# 1, 1. WEEK
More information歯9장.PDF
9 Hello!! C printf() scanf() getchar() putchar() gets() puts() fopen() fclose() fprintf() fscant() fgetc() fputs() fgets() gputs() fread() fwrite() fseek() ftell() I/O 2 (stream) C (text stream) : `/n'
More informationUSER GUIDE
Solution Package Volume II DATABASE MIGRATION 2010. 1. 9. U.Tu System 1 U.Tu System SeeMAGMA SYSTEM 차 례 1. INPUT & OUTPUT DATABASE LAYOUT...2 2. IPO 중 VB DATA DEFINE 자동작성...4 3. DATABASE UNLOAD...6 4.
More informationPowerPoint Presentation
Server I/O utilization System I/O utilization V$FILESTAT V$DATAFILE Data files Statspack Performance tools TABLESPACE FILE_NAME PHYRDS PHYBLKRD READTIM PHYWRTS PHYBLKWRT WRITETIM ------------- -----------------------
More informationyessign Version 3.1 (yessign). ccopyright 2009 yessign ALL RIGHTS RESERVED
yessign Version 3.1 (yessign). ccopyright 2009 yessign ALL RIGHTS RESERVED - - 2000. 8.29. 2000. 8.29. 2001. 7. 5. 2001. 7. 5. 2001.12.17. 2001.12.17. 2002. 3.12. 2002. 3.12. 2002. 8.21. 2002. 9. 5. 2002.12.27.
More informationSolaris Express Developer Edition
Solaris Express Developer Edition : 2008 1 Solaris TM Express Developer Edition Solaris OS. Sun / Solaris, Java, Web 2.0,,. Developer Solaris Express Developer Edition System Requirements. 768MB. SPARC
More informationMicrosoft PowerPoint - 04-UDP Programming.ppt
Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여
More informationPowerPoint 프레젠테이션
Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING
More informationPRO1_09E [읽기 전용]
Siemens AG 1999 All rights reserved File: PRO1_09E1 Information and - ( ) 2 3 4 5 Monitor/Modify Variables" 6 7 8 9 10 11 CPU 12 Stop 13 (Forcing) 14 (1) 15 (2) 16 : 17 : Stop 18 : 19 : (Forcing) 20 :
More informationuFOCS
1 기 : 기 UF_D_V250_002 기 기 기 품 ufocs 기 v2.5.0 히기기기기기기기기기 기 Manual 기 version 기 3.2 기품 2011.7.29 히기 345-13 1 Tel : 02-857-3051 Fax : 02-3142-0319 : http://www.satu.co.kr 2010 SAT information Co., Ltd. All
More informationMobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V
Mobile Service > IAP > Android SDK IAP SDK TOAST SDK. IAP SDK. Android Studio IDE 2.3.3 Android SDK Version 2.3.3 (API Level 10). Name Reference Version License okhttp http://square.github.io/okhttp/ 1.5.4
More information10.ppt
: SQL. SQL Plus. JDBC. SQL >> SQL create table : CREATE TABLE ( ( ), ( ),.. ) SQL >> SQL create table : id username dept birth email id username dept birth email CREATE TABLE member ( id NUMBER NOT NULL
More information- - yessign Version 3.5 (yessign)
- - yessign Version 3.5 (yessign). 2000. 8.29. 2000. 8.29. 2001. 7. 5. 2001. 7. 5. 2001.12.17. 2001.12.17. 2002. 3.12. 2002. 3.12. 2002. 8.21. 2002. 9. 5. 2002.12.27. 2003. 1.13. 2004. 3.31. 2004. 6.12.
More informationchapter4
Basic Netw rk 1. ก ก ก 2. 3. ก ก 4. ก 2 1. 2. 3. 4. ก 5. ก 6. ก ก 7. ก 3 ก ก ก ก (Mainframe) ก ก ก ก (Terminal) ก ก ก ก ก ก ก ก 4 ก (Dumb Terminal) ก ก ก ก Mainframe ก CPU ก ก ก ก 5 ก ก ก ก ก ก ก ก ก ก
More informationIndex Process Specification Data Dictionary
Index Process Specification Data Dictionary File Card Tag T-Money Control I n p u t/o u t p u t Card Tag save D e s c r i p t i o n 리더기위치, In/Out/No_Out. File Name customer file write/ company file write
More informationK&R2 Reference Manual 번역본
typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct
More information02 C h a p t e r Java
02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER
More informationIntra_DW_Ch4.PDF
The Intranet Data Warehouse Richard Tanler Ch4 : Online Analytic Processing: From Data To Information 2000. 4. 14 All rights reserved OLAP OLAP OLAP OLAP OLAP OLAP is a label, rather than a technology
More informationMicrosoft Word - Tmax Getting Started Guide.doc
Tmax Getting Started Guide Copyright 2000 TmaxSoft Co., Ltd. All Rights Reserved Copyright Notice Copyright 2000 TmaxSoft Co., Ltd. All Rights Reserved. TmaxSoft Co., Ltd. 대한민국서울시강남구대치동 946-1 글라스타워 18
More informationDialog Box 실행파일을 Web에 포함시키는 방법
DialogBox Web 1 Dialog Box Web 1 MFC ActiveX ControlWizard workspace 2 insert, ID 3 class 4 CDialogCtrl Class 5 classwizard OnCreate Create 6 ActiveX OCX 7 html 1 MFC ActiveX ControlWizard workspace New
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting Started 'OZ
More information기타자료.PDF
< > 1 1 2 1 21 1 22 2 221 2 222 3 223 4 3 5 31 5 311 (netting)5 312 (matching) 5 313 (leading) (lagging)6 314 6 32 6 321 7 322 8 323 13 324 19 325 20 326 20 327 20 33 21 331 (ALM)21 332 VaR(Value at Risk)
More informationDE1-SoC Board
실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically
More informationDomino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer
Domino, Portal & Workplace WPLC FTSS Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer ? Lotus Notes Clients
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started (ver 5.1) 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting
More information歯엑셀모델링
I II II III III I VBA Understanding Excel VBA - 'VB & VBA In a Nutshell' by Paul Lomax, October,1998 To enter code: Tools/Macro/visual basic editor At editor: Insert/Module Type code, then compile by:
More information프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어
개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,
More informationUDP Flooding Attack 공격과 방어
황 교 국 (fullc0de@gmail.com) SK Infosec Co., Inc MSS Biz. Security Center Table of Contents 1. 소개...3 2. 공격 관련 Protocols Overview...3 2.1. UDP Protocol...3 2.2. ICMP Protocol...4 3. UDP Flood Test Environment...5
More informationUI TASK & KEY EVENT
KEY EVENT & STATE 구현 2007. 1. 25 PLATFORM TEAM 정용학 차례 Key Event HS TASK UI TASK LONG KEY STATE 구현 소스코드및실행화면 질의응답및토의 2 KEY EVENT - HS TASK hs_task keypad_scan_keypad hs_init keypad_pass_key_code keypad_init
More informationFileMaker ODBC 및 JDBC 가이드
FileMaker ODBC JDBC 2004-2019 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker, FileMaker Cloud, FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker,
More information1
04단원 컴퓨터 소프트웨어 1. 프로그래밍 언어 2. 시스템 소프트웨어 1/10 1. 프로그래밍 언어 1) 프로그래밍 언어 구분 각종 프로그래밍 언어에 대해 알아보는 시간을 갖도록 하겠습니다. 우리가 흔히 접하는 소프트웨어 들은 프로그래밍 언어로 만들어지는데, 프로그래밍 언어는 크게 2가지로 나눌 수 있습니다. 1 저급어 : 0과 1로 구성되어 있어, 컴퓨터가
More informationPowerPoint Presentation
FORENSICINSIGHT SEMINAR SQLite Recovery zurum herosdfrc@google.co.kr Contents 1. SQLite! 2. SQLite 구조 3. 레코드의삭제 4. 삭제된영역추적 5. 레코드복원기법 forensicinsight.org Page 2 / 22 SQLite! - What is.. - and why? forensicinsight.org
More informationRemote UI Guide
Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................
More information교육2 ? 그림
Interstage 5 Apworks EJB Application Internet Revision History Edition Date Author Reviewed by Remarks 1 2002/10/11 2 2003/05/19 3 2003/06/18 EJB 4 2003/09/25 Apworks5.1 [ Stateless Session Bean ] ApworksJava,
More information휠세미나3 ver0.4
andromeda@sparcs:/$ ls -al dev/sda* brw-rw---- 1 root disk 8, 0 2014-06-09 18:43 dev/sda brw-rw---- 1 root disk 8, 1 2014-06-09 18:43 dev/sda1 brw-rw---- 1 root disk 8, 2 2014-06-09 18:43 dev/sda2 andromeda@sparcs:/$
More information[ 융합과학 ] 과학고 R&E 결과보고서 뇌파를이용한곤충제어 연구기간 : ~ 연구책임자 : 최홍수 ( 대구경북과학기술원 ) 지도교사 : 박경희 ( 부산일과학고 ) 참여학생 : 김남호 ( 부산일과학고 ) 안진웅 ( 부산일과학고 )
[ 융합과학 ] 과학고 R&E 결과보고서 뇌파를이용한곤충제어 연구기간 : 2013. 3. 1 ~ 2014. 2. 28 연구책임자 : 최홍수 ( 대구경북과학기술원 ) 지도교사 : 박경희 ( 부산일과학고 ) 참여학생 : 김남호 ( 부산일과학고 ) 안진웅 ( 부산일과학고 ) 장은영 ( 부산일과학고 ) 정우현 ( 부산일과학고 ) 조아현 ( 부산일과학고 ) 1 -
More information歯MDI.PDF
E08 MDI SDI(Single Document Interface) MDI(Multiple Document Interface) MDI (Client Window) (Child) MDI 1 MDI MDI MDI - File New Other Projects MDI Application - MDI - OK [ 1] MDI MDI MDI MDI Child MDI
More information5.스택(강의자료).key
CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.
More informationJMF2_심빈구.PDF
JMF JSTORM http://wwwjstormpekr Issued by: < > Document Information Document title: Document file name: Revision number: Issued by: JMF2_ doc Issue Date: Status: < > raica@nownurinet
More information(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -
(Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register
More information(Humphery Kim) RAD Studio : h=p://tech.devgear.co.kr/ : h=p://blog.hjf.pe.kr/ Facebook : h=p://d.com/hjfactory :
#2 (RAD STUDIO) In www.devgear.co.kr 2016.05.18 (Humphery Kim) RAD Studio : h=p://tech.devgear.co.kr/ : h=p://blog.hjf.pe.kr/ Facebook : h=p://d.com/hjfactory : hskim@embarcadero.kr 3! 1 - RAD, 2-3 - 4
More informationVOL.76.2008/2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph
인터그래프코리아(주)뉴스레터 통권 제76회 비매품 News Letters Information Systems for the plant Lifecycle Proccess Power & Marine Intergraph 2008 Contents Intergraph 2008 SmartPlant Materials Customer Status 인터그래프(주) 파트너사
More information10주차.key
10, Process synchronization (concurrently) ( ) => critical section ( ) / =>, A, B / Race condition int counter; Process A { counter++; } Process B { counter ;.. } counter++ register1 = counter register1
More informationo o o 8.2.1. Host Error 8.2.2. Message Error 8.2.3. Recipient Error 8.2.4. Error 8.2.5. Host 8.5.1. Rule 8.5.2. Error 8.5.3. Retry Rule 8.11.1. Intermittently
More information목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2
유영테크닉스( 주) 사용자 설명서 HDD014/034 IDE & SATA Hard Drive Duplicator 유 영 테 크 닉 스 ( 주) (032)670-7880 www.yooyoung-tech.com 목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy...
More informationFileMaker 15 ODBC 및 JDBC 설명서
FileMaker 15 ODBC JDBC 2004-2016 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker, Inc... FileMaker.
More information