PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → image base SQL Server
image base SQL Server
Iniciado por soddev, 23,abr. 2020 12:42 - 1 respuesta
Publicado el 23,abril 2020 - 12:42
Bonjour à tous,

Je rencontre un problème et j'ai besoin de votre aide.
J'ai un projet qui tourne uniquement en base SQL serveur (pas d'analyse)

J'ai une table avec une rubrique image (je ne peux pas stocker le chemin pour différentes raisons).

Dans le programme, l'utilisateur choisit son image qui est stocké dans une zone répétée.
ensuite j’exécute le code suivant pour la stocker
bufFichier est un Buffer
sImg64 est une chaîne ANSI

SI nNBPhoto > 0 ALORS
POUR i = 1 _À_ nNBPhoto
SI ZR_ListeImage[i].ATT_GRPPHOTO_NOTE <> "" ALORS
bufFichier = fChargeTexte(ZR_ListeImage[i].IMG_GRPPHOTO)
sImg64 = Crypte(bufFichier,"",crypteAucun,encodeBASE64)
SINON
sImg64 = Remplace(gtabSauvImage[i],"'","''")
FIN

SI ZR_ListeImage[i].SAI_GRPID = 0 ALORS
//Création
sTxtInsertUpd = "INSERT INTO GRADAGE_RACLETTE_PHOTO (GRID,GRPPHOTO,GRPCOMMENTAIRE,CREATUSER,CREATDATE) VALUES(%1,'%2','%3','%4','%5')"
sTxtInsertUpd = ChaîneConstruit(sTxtInsertUpd,gnIdentifiant,sImg64,ZR_ListeImage[i].SAI_GRPCOMMENTAIRE,gUtilisateurCourant.Code,DateVersChaîne(DateSys(),"JJ/MM/AAAA")+" "+HeureVersChaîne(HeureSys(),"HH:MM:SS")+".000")
SINON
//Modification
sTxtInsertUpd = "UPDATE GRADAGE_RACLETTE_PHOTO SET GRPPHOTO = '"+sImg64+"', GRPCOMMENTAIRE = '"+ZR_ListeImage[i].SAI_GRPCOMMENTAIRE+"', MODIFUSER = '"+gUtilisateurCourant.Code+"', MODIFDATE = '"+DateVersChaîne(DateSys(),"JJ/MM/AAAA")+" "+HeureVersChaîne(HeureSys(),"HH:MM:SS")+".000' WHERE GRPID = "+ZR_ListeImage[i].SAI_GRPID
FIN

SI sTxtInsertUpd <> "" ALORS
SI PAS HExécuteRequêteSQL(sdInsertUpd,SQLConnexion,hRequêteSansCorrection,sTxtInsertUpd) ALORS
Erreur(HErreurInfo())
FIN
FIN
FIN
FIN


Pas de soucis jusque là.

Pour la relecture, j’exécute le code suivant :

sTxtImage = "SELECT * FROM GRADAGE_RACLETTE_PHOTO WHERE GRID = "+gnIdentifiant+" ORDER BY GRPID"
SI HExécuteRequêteSQL(sdImage,SQLConnexion,hRequêteSansCorrection,sTxtImage) ALORS
HLitPremier(sdImage)
TANTQUE PAS HEnDehors(sdImage)
nLigne = ZoneRépétéeAjouteLigne(ZR_ListeImage)
SI nLigne > 0 ALORS
ZR_ListeImage[nLigne].SAI_GRPID = sdImage.GRPID
ZR_ListeImage[nLigne].IMG_GRPPHOTO = Décrypte(sdImage.GRPPHOTO,"",crypteAucun,encodeBASE64)
ZR_ListeImage[nLigne].SAI_GRPCOMMENTAIRE = sdImage.GRPCOMMENTAIRE
FIN
HLitSuivant(sdImage)
FIN
FIN
HAnnuleDéclaration(sdImage)


La photo s'affiche bien. Mais par contre si je fais à nouveau l'enregistrement, là quand je reviens sur l'écran plus aucune image.

Pouvez-vous m'aider?

Merci et bonne journée.
Publicado el 23,abril 2020 - 14:16
J'ai trouvé une solution à mon problème.
Merci encore