Mettre à jour le compte de soutien de l’échéance à la facture

Dans cet exemple nous voyons comment mettre à jour le compte de soutien présent sur la facture à partir de l’échéance.

Groupe Script

Fiche

Événement

Après Enregistrement


gguidp = dataview.getvalue("gguidp")

tap = dataview.getvalue("tap")

if gguidp == "" or tap == "" then

do return end

end

D’abord nous voyons si effectivement l’échéance a un dossier père en vérifiant le champ gguid et tap, puisque tout le logiciel relie les dossiers en utilisant ces deux valeurs.

La valeur gguidp identifie la ligne père, tandis que la valeur tap identifie le tableau père. Si ces champs n’ont pas des valeurs, l’échéance a été créée par l’utilisateur, sinon un autre tableau l’à créée.

gguidc = dataview.getvalue("gguid_supportaccount")

if gguidc == "" then

do return end

end

Nous récupérons aussi le gguid du compte de soutien. Dans ce cas également si on n’a pas de valeurs, nous sortons du script.

tablebill = database.getsql("SELECT * FROM companyaccounts WHERE gguid='" .. gguidc .. "'")

if tablebill.countrows() == 0 then

do return end

end

rows = tablebill.getrows()



output.print(rows[1].getvalue("billname"))

output.print(righe[1].getvalue("bankaccount"))

output.print(righe[1].getvalue("iban"))

Nous récupérons les valeurs du compte bancaire de son gguid. Ces valeurs seront ceux qu’on va écrire dans la facture.

database.setsql("UPDATE " .. tap .. " SET TID=" .. tostring(utility.tid()) .. ",supportaccount='" .. utility.convap(rows[1].getvalue("billname")) .. "',currentaccountfirm='" .. utility.convap(rows[1].getvalue("bankaccount")) .. "',ibanfirm='" .. utility.convap(rows[1].getvalue("iban")) .. "' WHERE gguid='" .. gguidp .. "'")


database.addsyncbox(tap,gguidp)

program.refreshsection("invoices")

Enfin nous mettons à jour la facture liée avec les données du compte. Si la base de données est de type Cloud il sera nécessaire de ne pas oublier de mettre à jour le tid (la date et heure de modification du dossier) et de l’ajouter au syncbox.

Une fois modifiées les données, nous forçons le mise à jour des sections qui rappellent le tableau des factures.