PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV (earlier versions) → un etat en provenance d'un Tableur
un etat en provenance d'un Tableur
Started by Johnston BOUKA, Jan., 18 2024 9:35 AM - 1 reply
Posted on January, 18 2024 - 9:35 AM
Bonjour
j'ai besoin de votre aide j'ai écris un code sous WinDev qui me permet de générer plusieurs état dont la source est un tableur.
mais l'état ne garde que la dernière information .

Voici mon code:

i est un entier=1
POUR TOUT Z_DONNEESDAS

TBLR_DAS_Ind1["B1"] = Z_DONNEESDAS.MatriculeSal
TBLR_DAS_Ind1["C1"] = Z_DONNEESDAS.NOMPrenomSal +" "+Z_DONNEESDAS.PrenomSal

TBLR_DAS_Ind1["B5"] = Z_DONNEESDAS.Fonction_agent
TBLR_DAS_Ind1["G5"] = Z_DONNEESDAS.Adresse
TBLR_DAS_Ind1["E8"] = "02236E"
sValSitFam est une chaîne=Z_DONNEESDAS.Situationfam

SI sValSitFam="C" ALORS
TBLR_DAS_Ind1["J5"] = "Célibataire"
SINON
TBLR_DAS_Ind1["J5"] = "Marié(e)"
FIN

TBLR_DAS_Ind1["I8"] = "0001100U"
TBLR_DAS_Ind1["L8"] = Z_DONNEESDAS.NbreEnf
TBLR_DAS_Ind1["O5"] = Z_DONNEESDAS.Date_Debut
TBLR_DAS_Ind1["O8"] = Z_DONNEESDAS.Date_Fin

Val6 est un entier

SalBrut est un entier = Z_DONNEESDAS.SalaireBrutAn
rAvNAt est un entier = Z_DONNEESDAS.Total_Avnat
SalBrut1 est un entier = SalBrut-rAvNAt

TBLR_DAS_Ind["H3"] = SalBrut1
TBLR_DAS_Ind["H5"] = ""
Val1 est un entier = (SalBrut1*20)/100
TBLR_DAS_Ind["H6"] = Val1
Val2 est un entier = (SalBrut1*7)/100
TBLR_DAS_Ind["H7"] = Val2
Val3 est un entier = (SalBrut1*5)/100
TBLR_DAS_Ind["H8"] = Val3
Val4 est un entier = (SalBrut1*2)/100
TBLR_DAS_Ind["H9"] = Val4
Val5 est un entier = (SalBrut1*3)/100
TBLR_DAS_Ind["H10"] = Val5

// Val6 = (Z_DONNEESDAS.PlafCnssSal*20)/100
TBLR_DAS_Ind["H11"] = Val6

TBLR_DAS_Ind["H12"] = Z_DONNEESDAS.SalaireBrutAn
ValTotal est un entier =Z_DONNEESDAS.Cnss_An
TBLR_DAS_Ind["H13"] = ValTotal
TBLR_DAS_Ind["H14"] = Z_DONNEESDAS.Brut_taxable
TBLR_DAS_Ind["H15"] = Z_DONNEESDAS.Base_imposable

TBLR_DAS_Ind["M3"] = Z_DONNEESDAS.Irpp_payé_An
TBLR_DAS_Ind["M7"] = Z_DONNEESDAS.CAMU_DAS
TBLR_DAS_Ind["M10"] = "2000"
TBLR_DAS_Ind["M12"] = "2400"
TBLR_DAS_Ind["M14"] = Z_DONNEESDAS.TOL

iEnchaînementAjoute(ETAT_FicheIndividuel)

i++
FIN
iEnchaînementImprime()

merci pour votre aide
>Cordialement
Registered member
546 messages
Posted on January, 20 2024 - 2:47 PM
Bonjour,
Pourquoi passer par un tableur pour ce genre d'opération, c'est le rôle de l'état.
De plus, iEnchainementxxx a pour rôle d'enchainer des états par programmation (à la différence des états composites) :
https://doc.pcsoft.fr/?9000128

Vous pouvez créer directement un état contenant des tableaux que vous créez, les champs sont remplis avec les données du fichier de base de données ou une requête, les calculs sont réalisés dans le code de l'état et un saut de page est mis en place (par exemple sur une rupture) pour créer les différentes pages.

Cdlt