Ajouter/modifier une affaire par programmation

SOLVED

Hello,

Le script ci-dessous test la présence d'une affaire par son code. Si elle existe, il met à jour, sinon il ajoute. Ce script fonctionne pour les articles, mais il ne fonctionne pas pour les affaires..

D'où ma question : comment ajouter/modifier une affaire par programmation ? 

J'ai également essayé par COM: impossible, la table/workspace Affaire est en lecture seul.

Y a-t-il un autre moyen? Via une tâche peut-être ?

  tu peux me dire? J'ai un besoin client.

Marc

ScriptTypeDirect
LabelErr()

Const kWgcTableIdArticle "00000200E87A0100" // Table : Articles DevName: Article
Const kWgcFidArticleCode 1 // Rubrique : Code DevName: Code
Const kWgcFidArticleDescShort 3 // Rubrique : Désignation courte DevName: DescShort


Const kWgcTableIdAffr "00004500E87A0100" // Table : Affaires DevName: Affr
Const kWgcFidAffrCode 1 // Rubrique : Code DevName: Code
Const kWgcFidAffrLibelle 2 // Rubrique : Libellé DevName: Libelle

DimEnt ss

// Test présence de l'enregistrement avant ajout ou maj.

QueryCreate(kQueryTypeSelect,"-StrDs")
QueryAddTable(kWgcTableIdAffr)
QueryAddCol(kWgcFidAffrCode)

QueryCmd("-AddRec","AF3")
QueryExec()

ss = QueryResult(0)
Message(ss)

Si ss = 0
QueryCreate(kQueryTypeInsert)
QueryAddTable(kWgcTableIdAffr)
QuerySetVal("Cmd:Def")
QuerySetVal(kWgcFidAffrCode,"AF3")
QuerySetVal(kWgcFidAffrLibelle,"BB")
QuerySetVal("Cmd:EOR")
QueryExec()
Message("ajout ok")

SinonSi ss = 1
QueryCreate(kQueryTypeUpdate)
QueryAddTable(kWgcTableIdAffr)
QuerySetVal("Cmd:Def")
QuerySetVal(kWgcFidAffrCode,"AF3")
QuerySetVal(kWgcFidAffrLibelle,"DD")
QuerySetVal("Cmd:EOR")
QueryExec()
Message("maj ok")

FinSi

  • +1
    verified answer

    Bonjour Marc,

    On ne peut faire par requête que des modifications aussi faisables par import paramétrables.

    Il n'y a pas d'import possible des affaires, ni en création ni en modification donc ce n'est pas possible par requête, désolé.

    Pour info, à ma connaissance, seule les pièces et les articles acceptent des mises à jours (Update)

    Faites-nous savoir si la réponse vous a été utile en la marquant comme vérifiée. Pour cela, au niveau de la réponse apportée cliquer sur l'option "Vérifier la réponse".

    Bonne journée.