Magic User Group

Magic Wiki-Wakka : MessageBox

HomePage :: CATEGORIES | Index :: Changes :: Comments :: Search :: Login/Register
Most recent edit on 2007-07-02 00:05:52 by NorbertGutscher

Additions:

How To use Windows Message Box API (Magic 8.3 & 9.4)


Magic Version 8.3

VRSN=830
APPLICATION=N
ISN=N

PRG={
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={},
DTLS={
KEY={MOD=N},
DB={},
FLW=B,DEL=N,END=Y,EMOD=A,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=N,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={SUFIX=1}
SUFIX={
CALL_TSK={MOD=T,TSK=1,LOCK=Y,WAIT=Y,FLW={CND=Y,MOD=S,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
TSK={
HDR={DESC="NVK",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=68,MOD=W,OPN=W,READ=N,SIZ=N}},
DTLS={
KEY={MOD=N},
DB={DB=68},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:26"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"},
TSK={
HDR={DESC="NVKP",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=74,MOD=W,OPN=W,READ=N,SIZ=Y}},
DTLS={
KEY={MOD=N},
DB={DB=74},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVKP",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"}}



Magic Version 9.4

With this function you can display a Messagebox. The way the MessageBox looks like is definable.
You just have to add all the properties you want it to have.

The Task Properties will look like this:
Task Type: Batch
Initial Mode: Modify
EndTask: Yes-After
Allow Events: No


The record main will look like this:
Select  Param  1 i-MessageBox        Type  ("A")  Num:40
Select  Param  2 i-MessageBoxTitle   Type  ("B")  Alpha:100
Select  Param  3 i-MessageBoxMessage Type  ("C")  Alpha:1000
Select  Param  4 o-MessageBoxAnswer  Type  ("D")  Num:2


The record suffix will look like this:
Block If                    Cnd:A=0
  Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Block Else
  Update   D o-MessageBoxAnswer    Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)
End Block



So the way the MessageBox will look like is define with the following properties (first parameter i-MessageBox):
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5

None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64

vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768

None = 0
vbSystemModal = 4096

vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576

So if you want to display a Yes/No MessageBox you add:
i-MessageBox = 4 + 32 + 4096 + 65536 + depending on the default button 0 or 256.

The resulting button which is pressed o-MessageBoxAnswer can have the following results:
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7


i know the vb-prefix is on this forum NOT on its place :-)


Category
CategoryHowTo


Deletions:

How To use Windows Message Box API (Magic 8.3





Edited on 2007-06-29 23:47:59 by PrxGuz

Additions:

How To use Windows Message Box API (Magic 8.3



Deletions:

How To use Windows Message Box API (Magic 8.3 & 9.4)


Magic Version 8.3

VRSN=830
APPLICATION=N
ISN=N

PRG={
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={},
DTLS={
KEY={MOD=N},
DB={},
FLW=B,DEL=N,END=Y,EMOD=A,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=N,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={SUFIX=1}
SUFIX={
CALL_TSK={MOD=T,TSK=1,LOCK=Y,WAIT=Y,FLW={CND=Y,MOD=S,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
TSK={
HDR={DESC="NVK",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=68,MOD=W,OPN=W,READ=N,SIZ=N}},
DTLS={
KEY={MOD=N},
DB={DB=68},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:26"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"},
TSK={
HDR={DESC="NVKP",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=74,MOD=W,OPN=W,READ=N,SIZ=Y}},
DTLS={
KEY={MOD=N},
DB={DB=74},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVKP",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"}}



Magic Version 9.4

With this function you can display a Messagebox. The way the MessageBox looks like is definable.
You just have to add all the properties you want it to have.

The Task Properties will look like this:
Task Type: Batch
Initial Mode: Modify
EndTask: Yes-After
Allow Events: No


The record main will look like this:
Select  Param  1 i-MessageBox        Type  ("A")  Num:40
Select  Param  2 i-MessageBoxTitle   Type  ("B")  Alpha:100
Select  Param  3 i-MessageBoxMessage Type  ("C")  Alpha:1000
Select  Param  4 o-MessageBoxAnswer  Type  ("D")  Num:2


The record suffix will look like this:
Block If                    Cnd:A=0
  Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Block Else
  Update   D o-MessageBoxAnswer    Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)
End Block



So the way the MessageBox will look like is define with the following properties (first parameter i-MessageBox):
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5

None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64

vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768

None = 0
vbSystemModal = 4096

vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576

So if you want to display a Yes/No MessageBox you add:
i-MessageBox = 4 + 32 + 4096 + 65536 + depending on the default button 0 or 256.

The resulting button which is pressed o-MessageBoxAnswer can have the following results:
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7


i know the vb-prefix is on this forum NOT on its place :-)


Category
CategoryHowTo




Edited on 2007-04-20 14:50:05 by NorbertGutscher

Additions:

How To use Windows Message Box API (Magic 8.3 & 9.4)


Magic Version 8.3

VRSN=830
APPLICATION=N
ISN=N

PRG={
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={},
DTLS={
KEY={MOD=N},
DB={},
FLW=B,DEL=N,END=Y,EMOD=A,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=N,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={SUFIX=1}
SUFIX={
CALL_TSK={MOD=T,TSK=1,LOCK=Y,WAIT=Y,FLW={CND=Y,MOD=S,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
TSK={
HDR={DESC="NVK",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=68,MOD=W,OPN=W,READ=N,SIZ=N}},
DTLS={
KEY={MOD=N},
DB={DB=68},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:26"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"},
TSK={
HDR={DESC="NVKP",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=74,MOD=W,OPN=W,READ=N,SIZ=Y}},
DTLS={
KEY={MOD=N},
DB={DB=74},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVKP",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"}}



Magic Version 9.4

With this function you can display a Messagebox. The way the MessageBox looks like is definable.
You just have to add all the properties you want it to have.

The Task Properties will look like this:
Task Type: Batch
Initial Mode: Modify
EndTask: Yes-After
Allow Events: No


The record main will look like this:
Select  Param  1 i-MessageBox        Type  ("A")  Num:40
Select  Param  2 i-MessageBoxTitle   Type  ("B")  Alpha:100
Select  Param  3 i-MessageBoxMessage Type  ("C")  Alpha:1000
Select  Param  4 o-MessageBoxAnswer  Type  ("D")  Num:2


The record suffix will look like this:
Block If                    Cnd:A=0
  Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Block Else
  Update   D o-MessageBoxAnswer    Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)
End Block



So the way the MessageBox will look like is define with the following properties (first parameter i-MessageBox):
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5

None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64

vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768

None = 0
vbSystemModal = 4096

vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576

So if you want to display a Yes/No MessageBox you add:
i-MessageBox = 4 + 32 + 4096 + 65536 + depending on the default button 0 or 256.

The resulting button which is pressed o-MessageBoxAnswer can have the following results:
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7


i know the vb-prefix is on this forum NOT on its place :-)


Category
CategoryHowTo


Deletions:

How To use Windows Message Box API (Magic 8.3





Edited on 2007-04-20 05:18:20 by SefJju

Additions:

How To use Windows Message Box API (Magic 8.3



Deletions:

How To use Windows Message Box API (Magic 8.3 & 9.4)


Magic Version 8.3

VRSN=830
APPLICATION=N
ISN=N

PRG={
HDR={DESC="NVK auf filiale 2 &#8222;ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={},
DTLS={
KEY={MOD=N},
DB={},
FLW=B,DEL=N,END=Y,EMOD=A,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=N,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={SUFIX=1}
SUFIX={
CALL_TSK={MOD=T,TSK=1,LOCK=Y,WAIT=Y,FLW={CND=Y,MOD=S,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK auf filiale 2 &#8222;ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
TSK={
HDR={DESC="NVK",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=68,MOD=W,OPN=W,READ=N,SIZ=N}},
DTLS={
KEY={MOD=N},
DB={DB=68},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:26"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"},
TSK={
HDR={DESC="NVKP",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=74,MOD=W,OPN=W,READ=N,SIZ=Y}},
DTLS={
KEY={MOD=N},
DB={DB=74},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVKP",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},

FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"}}



Magic Version 9.4

With this function you can display a Messagebox. The way the MessageBox looks like is definable.
You just have to add all the properties you want it to have.

The Task Properties will look like this:
Task Type: Batch
Initial Mode: Modify
EndTask: Yes-After
Allow Events: No


The record main will look like this:
Select  Param  1 i-MessageBox        Type  ("A")  Num:40
Select  Param  2 i-MessageBoxTitle   Type  ("B")  Alpha:100
Select  Param  3 i-MessageBoxMessage Type  ("C")  Alpha:1000
Select  Param  4 o-MessageBoxAnswer  Type  ("D")  Num:2


The record suffix will look like this:
Block If                    Cnd:A=0
  Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Block Else
  Update   D o-MessageBoxAnswer    Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)
End Block



So the way the MessageBox will look like is define with the following properties (first parameter i-MessageBox):
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5

None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64

vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768

None = 0
vbSystemModal = 4096

vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576

So if you want to display a Yes/No MessageBox you add:
i-MessageBox = 4 + 32 + 4096 + 65536 + depending on the default button 0 or 256.

The resulting button which is pressed o-MessageBoxAnswer can have the following results:
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7


i know the vb-prefix is on this forum NOT on its place :-)


Category
CategoryHowTo




Edited on 2005-10-10 22:30:11 by FrankVanHerreweghe

Additions:
So if you want to display a Yes/No MessageBox you add:

Deletions:
So if you want to display a YesNo MessageBox you add:



Edited on 2005-10-10 22:29:40 by FrankVanHerreweghe

Additions:
~vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5
None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64
vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768
None = 0
vbSystemModal = 4096
vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7

Deletions:
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5
None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64
vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768
None = 0
vbSystemModal = 4096
vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7




Edited on 2005-10-10 22:28:28 by FrankVanHerreweghe

Additions:
So if you want to display a YesNo MessageBox you add:
i-MessageBox = 4 + 32 + 4096 + 65536 + depending on the default button 0 or 256.



Edited on 2005-10-10 22:23:42 by FrankVanHerreweghe

Additions:
With this function you can display a Messagebox. The way the MessageBox looks like is definable.
You just have to add all the properties you want it to have.
So the way the MessageBox will look like is define with the following properties (first parameter i-MessageBox):
vbOKOnly = 0
vbOKCancel = 1
vbAbortRetryIgnore = 2
vbYesNoCancel = 3
vbYesNo = 4
vbRetryCancel = 5
None = 0
vbCritical = 16
vbQuestion = 32
vbExclamation = 48
vbInformation = 64
vbDefaultButton1 = 0
vbDefaultButton2 = 256
vbDefaultButton3 = 512
vbDefaultButton4 = 768
None = 0
vbSystemModal = 4096
vbMsgBoxHelpButton = 16384
vbMsgBoxSetForeground = 65536
vbMsgBoxRight = 524288
vbMsgBoxRtlReading = 1048576
The resulting button which is pressed o-MessageBoxAnswer can have the following results:
vbOK = 1
vbCancel = 2
vbAbort = 3
vbRetry = 4
vbIgnore = 5
vbYes = 6
vbNo = 7
i know the vb-prefix is on this forum NOT on its place :-)




Edited on 2005-10-10 21:58:38 by FrankVanHerreweghe

Additions:
Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Update D o-MessageBoxAnswer Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)


Deletions:
Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Update D o-MessageBoxAnswer Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)




Edited on 2005-10-10 21:58:06 by FrankVanHerreweghe

Additions:
End Block



Edited on 2005-10-10 21:57:42 by FrankVanHerreweghe

Additions:
The Task Properties will look like this:
Task Type: Batch
Initial Mode: Modify
EndTask: Yes-After
Allow Events: No
The record main will look like this:

Select Param 1 i-MessageBox Type ("A") Num:40
Select Param 2 i-MessageBoxTitle Type ("B") Alpha:100
Select Param 3 i-MessageBoxMessage Type ("C") Alpha:1000
Select Param 4 o-MessageBoxAnswer Type ("D") Num:2
The record suffix will look like this:%%
Block If Cnd:A=0
Evaluate CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),16)
Block Else
Update D o-MessageBoxAnswer Exp:CallDLL ('User32.MessageBoxA','4AA44',WINHWND (0),Trim (C),Trim (B),A)




Edited on 2005-10-10 21:29:31 by FrankVanHerreweghe

Additions:

How To use Windows Message Box API (Magic 8.3 & 9.4)

Magic Version 8.3
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
Magic Version 9.4


Deletions:

How To use Windows Message Box API

Version 8.3
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},




Edited on 2005-10-08 19:23:40 by NorbertGutscher [new first draft]

Additions:

How To use Windows Message Box API

Version 8.3
VRSN=830
APPLICATION=N
ISN=N
PRG={
HDR={DESC="NVK auf filiale 2 „ndern",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={},
DTLS={
KEY={MOD=N},
DB={},
FLW=B,DEL=N,END=Y,EMOD=A,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=N,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={SUFIX=1}
SUFIX={
CALL_TSK={MOD=T,TSK=1,LOCK=Y,WAIT=Y,FLW={CND=Y,MOD=S,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK auf filiale 2 „ndern",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},
FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
TSK={
HDR={DESC="NVK",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=68,MOD=W,OPN=W,READ=N,SIZ=N}},
DTLS={
KEY={MOD=N},
DB={DB=68},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:26"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVK",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},
FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"},
TSK={
HDR={DESC="NVKP",RSDNT=N,SQL=N,PRK=1,POS=S},
RSRCE={
DB={FILE=74,MOD=W,OPN=W,READ=N,SIZ=Y}},
DTLS={
KEY={MOD=N},
DB={DB=74},
FLW=B,DEL=N,END=N,EMOD=B,
MOD={MOD=M},
LCT={DIR=A},
RNG={DIR=A},
FLG={SLCT=N,CNF=N,SLOC=R,SFAIL=S,LSTRG=I,TSK_CACHE=T,SUFIX=N},
SIDE_WIN={
RPR={RPR=N}},
WIN={OPN=Y,CLS=Y,FGND=Y,FLIP=N,
DTLS={RTRN=N}},
BOX={DIR=V},
UPD={DATE="20.09.2004",TIME="14:09:53"}},
FLW={
BRK={TRNS=N,ERROR=A,PRK={VIEW=1,SUFIX=1}
VIEW={
SLCT={NAME="A",CNF=N,FLD=1,MOD=R,FLW={CND=Y,MOD=S,DIR=C}}},
SUFIX={
UPD={FLD="A",EXP=1,MOD=N,ABRT=Y,FLW={CND=Y,MOD=B,DIR=C}}}},
BRK={TRNS=Y,ERROR=A,PRK={}}},
DSP={
DSP_INFO={NAME="NVKP",MOD=H,COLOR=1,STYLE=1857,FONT=1,GRIDX=4,GRIDY=8},
UOM_FACTOR={X=4,Y=8},
FRM={DX=320,DY=200},
BLOCK={DX=320,DY=200},TAG_PRFX="<!$",TAG_SUFX=">"},
EXP="2"}}


Deletions:

How To use an Add-on INI-file

All Magic Windows versions
It is possible to add INI-settings to any standard INI-file.
This can be done by adding a pointer to the Add-on INI-fle in the commandline.
(This is one command line, or the "Target" of a Windows Shortcut.)
V:\PCIL9\Magic94\MGgenw.exe /ini=v:\pcil9\bin\ini\develop.ini
@v:\pcil9\bin\ini\ComponentsORA.ini /User=frank /startapplication=3
Here you can see that we start the program MGGENW.exe with the INI-file develop.ini but as we have some special settings we use an add-on INI-file called ComponentsORA.ini
The Add-on INI-file can be "added" using the @-sign. On XP you will have to use a slash in front of the @-sign, for example: /@v:\pcil9\bin\ini\ComponentsORA.ini.
The add-on INI-file has a slightly different structure as the normal INI-file.

OR
Example add-on INI-file:
[MAGIC_DATABASES]DEFDATA = 14, , , , ORAMULT, , DEFDATA, DEFDATA, NoMagicRecordLock, +
DontChangeFileInToolkit, CheckDefinition, NoCheckKey, NoFileLocks, , , , +
NoCheckExist, 0, , NoXATrans, NoAS400SrvrSort,
[MAGIC_ENV]ISAMTransaction = Y
[MAGIC_LOGICAL_NAMES]CITRIX = C:\\PCIL9\\BIN\\
[MAGIC_LOGICAL_NAMES]MODELFILESMFF = %CITRIX% %MCF%Components\\MODELFILES\\
Frank Van Herreweghe




Oldest known version of this page was edited on 2005-10-08 19:20:14 by NorbertGutscher [new]
Page view:

How To use an Add-on INI-file


All Magic Windows versions

It is possible to add INI-settings to any standard INI-file.
This can be done by adding a pointer to the Add-on INI-fle in the commandline.
(This is one command line, or the "Target" of a Windows Shortcut.)

V:\PCIL9\Magic94\MGgenw.exe /ini=v:\pcil9\bin\ini\develop.ini 
   @v:\pcil9\bin\ini\ComponentsORA.ini /User=frank /startapplication=3

Here you can see that we start the program MGGENW.exe with the INI-file develop.ini but as we have some special settings we use an add-on INI-file called ComponentsORA.ini
The Add-on INI-file can be "added" using the @-sign. On XP you will have to use a slash in front of the @-sign, for example: /@v:\pcil9\bin\ini\ComponentsORA.ini.

The add-on INI-file has a slightly different structure as the normal INI-file.


OR

Example add-on INI-file:
[MAGIC_DATABASES]DEFDATA = 14, , , , ORAMULT, , DEFDATA, DEFDATA, NoMagicRecordLock, +
DontChangeFileInToolkit, CheckDefinition, NoCheckKey, NoFileLocks, , , , +
NoCheckExist, 0, , NoXATrans, NoAS400SrvrSort,
[MAGIC_ENV]ISAMTransaction = Y
[MAGIC_LOGICAL_NAMES]CITRIX = C:\\PCIL9\\BIN\\
[MAGIC_LOGICAL_NAMES]MODELFILESMFF = %CITRIX% %MCF%Components\\MODELFILES\\


Frank Van Herreweghe

Category
CategoryHowTo
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki trunk
Page was generated in 0.2609 seconds