/* CopyRight 2001 EndUser4gl */ /* Ph Bergougnoux */ #include "EndUser4glwinX.h" #include "executex.h" extern int printfEU(const char * , ...) ; extern long OPCExecute_CreateVar(long OPCcodeExe) { char zone1[C_CMP_TAILLE_NOM_DICT] = "\0"; char zone2[C_CMP_TAILLE_NOM_DICT] = "\0"; char valeur1 [MAXBUFLENSTRING] = "\0"; int ReturnOpc = 0 ; int Ival = 0 ; long Lval = 0; switch( OPCcodeExe) { /* ************************************************************************************************* */ /* Insertion des variables GLOBALES/LOCALES ds tables des symboles GLOBALES /LOCALES */ /* ************************************************************************************************* */ case CodeCreateVarInteger : if((GlobalDrapTable) || (GlobalDrapStruct)) { if( GContexteLocal == FALSE) CallCreateVarStruct(P_INTEGER,GLOBAL); else CallCreateVarStruct(P_INTEGER,LOCAL); } else { OPCF_Pile_Depile( P_NAMEVAR, (void *)zone1); /* sommet de la pile */ if( GContexteLocal == FALSE) ReturnOpc = OPC_CreateGlobalVar_TableSymbole(P_INTEGER,zone1,(int)NULL); else ReturnOpc =OPC_CreateLocalVar_TableSymbole(P_INTEGER,0,zone1,(int)NULL); if(ReturnOpc) { Message_Return_OPC(zone1);return EUError ; } } break; case CodeCreateVarDouble : if((GlobalDrapTable) || (GlobalDrapStruct)) { if( GContexteLocal == FALSE) CallCreateVarStruct(P_DOUBLE,GLOBAL); else CallCreateVarStruct(P_DOUBLE,LOCAL); } else { OPCF_Pile_Depile( P_NAMEVAR, (void *)zone1); /* sommet de la pile */ OPCF_Pile_Depile(P_INTEGER, (void *)&Ival ); //@@@ 5/11/00 if( GContexteLocal == FALSE) ReturnOpc = OPC_CreateGlobalVar_TableSymbole(P_DOUBLE,zone1,Ival); else ReturnOpc = OPC_CreateLocalVar_TableSymbole(P_DOUBLE,0,zone1,Ival); if(ReturnOpc) { Message_Return_OPC(zone1);return EUError ; } } break; case CodeCreateVarFloat : if((GlobalDrapTable) || (GlobalDrapStruct)) { if( GContexteLocal == FALSE) CallCreateVarStruct(P_FLOAT,GLOBAL); else CallCreateVarStruct(P_FLOAT,LOCAL); } else { OPCF_Pile_Depile( P_NAMEVAR, (void *)zone1); /* sommet de la pile */ OPCF_Pile_Depile(P_INTEGER, (void *)&Ival ); //@@@ 5/11/00 if( GContexteLocal == FALSE) ReturnOpc = OPC_CreateGlobalVar_TableSymbole(P_FLOAT,zone1,Ival); else ReturnOpc = OPC_CreateLocalVar_TableSymbole(P_FLOAT,0,zone1,Ival); if(ReturnOpc) { Message_Return_OPC(zone1);return EUError ; } } break; ........Si acquisition d'une license