1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

AIDE Une seule requête au lieu de 2

Discussion dans 'Windev' créé par Mohamed, Oct 19, 2018.

  1. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour

    Je veux afficher tous les clients dans une table mémoire(Client,Ville,SommeVente,sommeAvir,Solde)
    Alors j'ai crée 2 requêtes pour lister les données est le résultat est bon.

    Ma question: Je veux utiliser une seule requête qui permet le même résultat.

    Description de mes 2 requêtes sont comme suit

    Requête 1 :

    REQ_InventaireCliNormales.ParamModeReglementEstDifferent="ESPECE"
    REQ_InventaireCliNormales.ParamdateDoc =SAI_Periode_Du
    REQ_InventaireCliNormales.ParamdateDoc1 =SAI_Periode_Au
    REQ_InventaireCliNormales.ParamTypeEstDans ="'0','5'"
    REQ_InventaireCliNormales.ParamETATCOMMANDEdans ="'FA'" pour totaliser la somme des ventes =>SommeVente

    Ligne est un entier
    HExécuteRequête(REQ_InventaireCliNormales)
    POUR TOUT REQ_InventaireCliNormales
    Ligne =TableAjouteLigne(TABLE)

    NumeroClient[Ligne] =REQ_InventaireCliNormales.NumClient
    CodeClt[Ligne] =REQ_InventaireCliNormales.CodeClient
    Client[Ligne] =REQ_InventaireCliNormales.Societe
    VilleClt[Ligne] =REQ_InventaireCliNormales.Ville
    MT_Vente[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC

    FIN

    Requête 2 :

    REQ_InventaireCliNormales.ParamModeReglementEstDifferent="ESPECE"
    REQ_InventaireCliNormales.ParamdateDoc =SAI_Periode_Du
    REQ_InventaireCliNormales.ParamdateDoc1 =SAI_Periode_Au
    REQ_InventaireCliNormales.ParamTypeEstDans ="'0','5'"
    REQ_InventaireCliNormales.ParamETATCOMMANDEdans ="'AV'" pour totaliser la somme des ventes =>SommeAvoir

    Ligne est un entier
    HExécuteRequête(REQ_InventaireCliNormales)
    POUR TOUT REQ_InventaireCliNormales
    Ligne =TableAjouteLigne(TABLE)

    NumeroClient[Ligne] =REQ_InventaireCliNormales.NumClient
    CodeClt[Ligne] =REQ_InventaireCliNormales.CodeClient
    Client[Ligne] =REQ_InventaireCliNormales.Societe
    VilleClt[Ligne] =REQ_InventaireCliNormales.Ville
    MT_Avoir[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC

    FIN

    //Je calcule le solde
    Pour toute ligne de Table
    MT_Solde=MT_Vente-MT_Avoir
    Fin

    Merci d'avance pour vos aides
     
    Tags:
  2. Yassine

    Yassine Member

    Inscrit:
    Mar 19, 2018
    Messages:
    44
    J'aime reçus:
    16
    REQ_InventaireCliNormales.ParamModeReglementEstDifferent="ESPECE"
    REQ_InventaireCliNormales.ParamdateDoc =SAI_Periode_Du
    REQ_InventaireCliNormales.ParamdateDoc1 =SAI_Periode_Au
    REQ_InventaireCliNormales.ParamTypeEstDans ="'0','5'"


    Ligne est un entier
    HExécuteRequête(REQ_InventaireCliNormales)
    POUR TOUT REQ_InventaireCliNormales
    Ligne =TableAjouteLigne(TABLE)

    NumeroClient[Ligne] =REQ_InventaireCliNormales.NumClient
    CodeClt[Ligne] =REQ_InventaireCliNormales.CodeClient
    Client[Ligne] =REQ_InventaireCliNormales.Societe
    VilleClt[Ligne] =REQ_InventaireCliNormales.Ville
    Si REQ_InventaireCliNormales.ParamETATCOMMANDEdans ="'FA'" ALORS
    MT_Vente[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC
    SINON
    MT_Avoir[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC
    FIN
    FIN
     
  3. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci Yassine de ton retour

    Mais comment on calcule "la_somme_TOTALTTC" (Regroupement /client) dans la requête pour les ventes et les avoirs avant de mettre votre condition.
    Car, j'ai une seule rubrique TotalTTC pour les ventes et les avoirs et je les distingue par la rubrique "EtatCommande=FA/AV"
     
  4. Yassine

    Yassine Member

    Inscrit:
    Mar 19, 2018
    Messages:
    44
    J'aime reçus:
    16
    Combien de ligne retourne ta requete (il faut la voir)

    REQ_InventaireCliNormales.ParamModeReglementEstDifferent="ESPECE"
    REQ_InventaireCliNormales.ParamdateDoc =SAI_Periode_Du
    REQ_InventaireCliNormales.ParamdateDoc1 =SAI_Periode_Au
    REQ_InventaireCliNormales.ParamTypeEstDans ="'0','5'"


    Ligne est un entier
    TOTALFA est reel =0
    TOTALAV est reel =0
    HExécuteRequête(REQ_InventaireCliNormales)
    POUR TOUT REQ_InventaireCliNormales
    Ligne =TableAjouteLigne(TABLE)

    NumeroClient[Ligne] =REQ_InventaireCliNormales.NumClient
    CodeClt[Ligne] =REQ_InventaireCliNormales.CodeClient
    Client[Ligne] =REQ_InventaireCliNormales.Societe
    VilleClt[Ligne] =REQ_InventaireCliNormales.Ville
    Si REQ_InventaireCliNormales.ParamETATCOMMANDEdans ="'FA'" ALORS
    MT_Vente[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC
    TOTALFA+=REQ_InventaireCliNormales.la_somme_TOTALTTC
    SINON
    MT_Avoir[Ligne] =REQ_InventaireCliNormales.la_somme_TOTALTTC
    TOTALAV+=REQ_InventaireCliNormales.la_somme_TOTALTTC
    FIN
    FIN

    info(TOTALAV+ " -----------"+TOTALFA)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  5. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Je connais cette méthode mais de préférable de faire la somme de total vente si "FA" et total des avoirs si Etat="AV" dans la requête
    c'est ca ce que je cherche
     
  6. Yassine

    Yassine Member

    Inscrit:
    Mar 19, 2018
    Messages:
    44
    J'aime reçus:
    16
    Si on voi pas ta requete on pourra pas t'aider
    regarde avec LE CASE WHEN
     

Partager cette page

Chargement...