Programmation avec windev

algodire -  
diablond Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je veux créer une numérotation automatique des factures a une assurance maladie, en partant du num=1 qui est insérer dans un champ numfact dans une fichier etablissement de telle façon a chaque creation d'une facture la situtation sera comme sa facture.numfact=etablissment.numfact
etablissement.numfact=etablissement+1
j'tulise windev 12

facture N°00001/2011 puis facture N°: 00002/2011 ...etc ( a chaque creation d'une facture nouvelle)

1 réponse

  1. diablond Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   48
     
    Bonjour,
    tu dois créer un champ NUM_Facture (numérique, pour faciliter la recherche) sur la fenetre de saisie de la facture
    faire un controle sur le numéro avec une requete (Num existant)
    dans le champ, il suffit d'ecrire le numéro de la facture et pas l'année, car il sera récupéré depuis le champ DATE
    ainsi, dans ETAT_Facture, on récupère FACTURE.NumFact on ajoute les "0000"
    (repete("0", 5-Taille(rub_numFact))) +"/"+année(RUB_Date)
    0
    1. directeur
       
      j'ai cherche avec le numfact

      SI TableOccurrence(Table)=0 ALORS RETOUR
      Ouvre(Fiche_Facture,numFact)
      TableAffiche(Table,taCourantBandeau)
      le resulat la requette est vide
      le code de requtte est le suivant
      PROCEDURE RemplitChamps(pnIdCom)
      // on remplit les champs de la commande à modifier
      nIdnumfact est un entier
      gfnNumfact est une entier
      // Informations propres à la commande
      HExécuteRequête(REQ_Facture,hRequêteDéfaut,nIdnumfact)
      SI ErreurDétectée ALORS
      Erreur("Impossible d'initialiser la requête.")
      Ferme()
      FIN

      // Lignes de commande
      HExécuteRequête(REQ_Lignefact1,hRequêteDéfaut,pnIdCom)
      SI ErreurDétectée ALORS
      Erreur("Impossible d'initialiser la requête.")
      Ferme()
      FIN

      HLitPremier(REQ_Facture)
      SI PAS HTrouve() ALORS
      Erreur("Le contenu de la requête est vide.")
      Ferme()
      FIN

      gfnNumfact = REQ_Facture.numFact
      POUR TOUT REQ_Lignefact1
      TableAjouteLigne(Table,REQ_Lignefact1.code_prestation,REQ_Lignefact1.NumAbm, REQ_Lignefact1.DateAbm, REQ_Lignefact1.Quantité, REQ_Lignefact1.Prix_Pres,REQ_Lignefact1.Prix_Tot,REQ_Lignefact1.Réduction)
      FIN
      0
    2. diablond Messages postés 183 Date d'inscription   Statut Membre Dernière intervention   48
       
      ça ne répond pas à la question de "algodir" qui est de mettre une numérotation automatique.
      0