je ne sais pas si beaucoup d'entre vous travaille avec des bases
oracle...
Je suis en train de me faire la main sur le merge oracle et ca
simplifie =E9norm=E9ment le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un bool=E9en
_sql est une cha=EEne
_sql +=3D " merge into BUDGET using (select 1 from dual) ori on
(BUDGET.ID_BUDGET =3D '%1') "
_sql +=3D " when matched then update set BUDGETLIBELLE =3D '%2' "
_sql +=3D "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE )
values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN
otl4WD:mySQLFerme(1)
_retFonction =3D otl4WD:mySQLExec("COMMIT",1)
IF (_retFonction) THEN
// rien juste renvoyer code retour
SINON
msg est une cha=EEne =3D (otl4WD:mySQLGetErrorMessage())
LOG(msg )
END
ELSE
Erreur(otl4WD:mySQLGetErrorMessage())
END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code
diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction
dynamique de la requete de MERGE en fonction de la description de la
table et de la classe.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Firetox
Bonjour,
juste pour info car je vois quelque chose qui ne va pas dans votre code sur OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne sont pas liés)
IF (_retFonction) THEN _retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1) IF pas (_retFonction) THEN msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement pour eviter de se trouver avec une requete ouverte et faire des mySQLFerme un peu partout
cordialement
a écrit dans le message de news: Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases oracle... Je suis en train de me faire la main sur le merge oracle et ca simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne _sql += " merge into BUDGET using (select 1 from dual) ori on (BUDGET.ID_BUDGET = '%1') " _sql += " when matched then update set BUDGETLIBELLE = '%2' " _sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE ) values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN otl4WD:mySQLFerme(1) _retFonction = otl4WD:mySQLExec("COMMIT",1) IF (_retFonction) THEN // rien juste renvoyer code retour SINON msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction dynamique de la requete de MERGE en fonction de la description de la table et de la classe.
Si ca peut faire gagner du temps à quelqu'un...
Bonjour,
juste pour info car je vois quelque chose qui ne va pas dans votre code sur
OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne
sont pas liés)
IF (_retFonction) THEN
_retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1)
IF pas (_retFonction) THEN
msg est une chaîne = (otl4WD:mySQLGetErrorMessage())
LOG(msg )
END
ELSE
Erreur(otl4WD:mySQLGetErrorMessage())
END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement
pour eviter de se trouver avec une requete ouverte et faire des mySQLFerme
un peu partout
cordialement
<tjfromparis@gmail.com> a écrit dans le message de
news:d464a9a5-6af4-4034-b108-f36f1490c9f2@30g2000yqi.googlegroups.com...
Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases
oracle...
Je suis en train de me faire la main sur le merge oracle et ca
simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne
_sql += " merge into BUDGET using (select 1 from dual) ori on
(BUDGET.ID_BUDGET = '%1') "
_sql += " when matched then update set BUDGETLIBELLE = '%2' "
_sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE )
values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN
otl4WD:mySQLFerme(1)
_retFonction = otl4WD:mySQLExec("COMMIT",1)
IF (_retFonction) THEN
// rien juste renvoyer code retour
SINON
msg est une chaîne = (otl4WD:mySQLGetErrorMessage())
LOG(msg )
END
ELSE
Erreur(otl4WD:mySQLGetErrorMessage())
END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code
diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction
dynamique de la requete de MERGE en fonction de la description de la
table et de la classe.
juste pour info car je vois quelque chose qui ne va pas dans votre code sur OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne sont pas liés)
IF (_retFonction) THEN _retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1) IF pas (_retFonction) THEN msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement pour eviter de se trouver avec une requete ouverte et faire des mySQLFerme un peu partout
cordialement
a écrit dans le message de news: Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases oracle... Je suis en train de me faire la main sur le merge oracle et ca simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne _sql += " merge into BUDGET using (select 1 from dual) ori on (BUDGET.ID_BUDGET = '%1') " _sql += " when matched then update set BUDGETLIBELLE = '%2' " _sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE ) values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN otl4WD:mySQLFerme(1) _retFonction = otl4WD:mySQLExec("COMMIT",1) IF (_retFonction) THEN // rien juste renvoyer code retour SINON msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction dynamique de la requete de MERGE en fonction de la description de la table et de la classe.
Si ca peut faire gagner du temps à quelqu'un...
tjfromparis
c'est parce que je n'ai pas fais le copier/coller jusqu'au bout mais je ferme bien mes requetes.
On 16 mar, 08:47, "Firetox" wrote:
Bonjour,
juste pour info car je vois quelque chose qui ne va pas dans votre code s ur OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne sont pas liés)
IF (_retFonction) THEN _retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1) IF pas (_retFonction) THEN msg est une chaîne = (otl4WD:mySQLGetErrorMes sage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement pour eviter de se trouver avec une requete ouverte et faire des mySQLFerm e un peu partout
cordialement
a écrit dans le message denews:d464a9a5-6af4-40 Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases oracle... Je suis en train de me faire la main sur le merge oracle et ca simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne _sql += " merge into BUDGET using (select 1 from dual) ori on (BUDGET.ID_BUDGET = '%1') " _sql += " when matched then update set BUDGETLIBELLE = '%2' " _sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE ) values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN otl4WD:mySQLFerme(1) _retFonction = otl4WD:mySQLExec("COMMIT",1) IF (_retFonction) THEN // rien juste renvoyer code retour SINON msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction dynamique de la requete de MERGE en fonction de la description de la table et de la classe.
Si ca peut faire gagner du temps à quelqu'un...
c'est parce que je n'ai pas fais le copier/coller jusqu'au bout mais
je ferme bien mes requetes.
On 16 mar, 08:47, "Firetox" <fire...@SQLManagerX.com> wrote:
Bonjour,
juste pour info car je vois quelque chose qui ne va pas dans votre code s ur
OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne
sont pas liés)
IF (_retFonction) THEN
_retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1)
IF pas (_retFonction) THEN
msg est une chaîne = (otl4WD:mySQLGetErrorMes sage())
LOG(msg )
END
ELSE
Erreur(otl4WD:mySQLGetErrorMessage())
END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement
pour eviter de se trouver avec une requete ouverte et faire des mySQLFerm e
un peu partout
cordialement
<tjfrompa...@gmail.com> a écrit dans le message denews:d464a9a5-6af4-40 34-b108-f36f1490c9f2@30g2000yqi.googlegroups.com...
Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases
oracle...
Je suis en train de me faire la main sur le merge oracle et ca
simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne
_sql += " merge into BUDGET using (select 1 from dual) ori on
(BUDGET.ID_BUDGET = '%1') "
_sql += " when matched then update set BUDGETLIBELLE = '%2' "
_sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE )
values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN
otl4WD:mySQLFerme(1)
_retFonction = otl4WD:mySQLExec("COMMIT",1)
IF (_retFonction) THEN
// rien juste renvoyer code retour
SINON
msg est une chaîne = (otl4WD:mySQLGetErrorMessage())
LOG(msg )
END
ELSE
Erreur(otl4WD:mySQLGetErrorMessage())
END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code
diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction
dynamique de la requete de MERGE en fonction de la description de la
table et de la classe.
c'est parce que je n'ai pas fais le copier/coller jusqu'au bout mais je ferme bien mes requetes.
On 16 mar, 08:47, "Firetox" wrote:
Bonjour,
juste pour info car je vois quelque chose qui ne va pas dans votre code s ur OTL4WD il faut fermer la requete quelque soit le resultat du exec (les 2 ne sont pas liés)
IF (_retFonction) THEN _retFonction = otl4WD::mySQLTransaction((otl4WD::mySQLFin), 1) IF pas (_retFonction) THEN msg est une chaîne = (otl4WD:mySQLGetErrorMes sage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
RENVOYER _retFonction
voila juste pour optimiser les lignes de code et le fonctionnement pour eviter de se trouver avec une requete ouverte et faire des mySQLFerm e un peu partout
cordialement
a écrit dans le message denews:d464a9a5-6af4-40 Bonjour
je ne sais pas si beaucoup d'entre vous travaille avec des bases oracle... Je suis en train de me faire la main sur le merge oracle et ca simplifie énormément le code.
PROCEDURE UPSERT_BUDGET(oBudget est un c_Budget)
_retFonction est un booléen
_sql est une chaîne _sql += " merge into BUDGET using (select 1 from dual) ori on (BUDGET.ID_BUDGET = '%1') " _sql += " when matched then update set BUDGETLIBELLE = '%2' " _sql += "when not matched then Insert (ID_BUDGET , BUDGETLIBELLE ) values ( '%1' , '%2' ) ; "
IF (_retFonction) THEN otl4WD:mySQLFerme(1) _retFonction = otl4WD:mySQLExec("COMMIT",1) IF (_retFonction) THEN // rien juste renvoyer code retour SINON msg est une chaîne = (otl4WD:mySQLGetErrorMessage()) LOG(msg ) END ELSE Erreur(otl4WD:mySQLGetErrorMessage()) END
otl4WD:mySQLFerme(1)
RENVOYER _retFonction
Entre le dataBinding de windev et le merge d'oracle le nombre de code diminue dans des proportions assez impressionnante.
Quand j'aurais un peu de temps, je vais voir pour une construction dynamique de la requete de MERGE en fonction de la description de la table et de la classe.