Points d'entrée > Module Achats > Script standard SUBPTX 

PURTRS : Intervention sur la gestion des champs spécifiques

Ce point d'entrée situé dans le traitement SUBPTXgestion des transactions de saisie des achats, génère une action "PURTRS".

Le but de cette action est de donner la possibilité d'intervenir sur la gestion des champs spécifiques tant au niveau de l’affichage que de la saisie.

Toutes les transactions de saisie des achats sont concernées par ce point d’entrée, c’est-à-dire celles des appels d’offre, des demandes d’achats, des commandes classiques, des contrats de commandes ouvertes et des factures.

Contexte et mode de fonctionnement

Transaction

Il y a une transaction en cours pour les actions INICRE, CREATION, INIMOD et MODIF.

Il n’y a pas de transaction en cours pour les actions RAZCRE, LIENS et APRES_MODIF

Fichier trace

Il n'y a pas de fichier trace ouvert.

Différents cas d’appel

L'appel se fait lors de la gestion du paramétrage des transactions de saisie :

-          des appels d’offre

-          des demandes d’achats

-          des ordres de sous-traitance

-          des commandes standards

-          des contrats de commandes ouvertes

-          des réceptions

-          des retours fournisseur

-          des factures

et ceci pour les actions suivantes du GOBJET :

-          RAZCRE  à l’entrée en création, initialisation des champs écrans

-          INICRE  avant l’écriture de l’enregistrement, chargement des champs fichiers

-          CREATION  après l’écriture de l’enregistrement, intervention sur les paramètres champs avant la génération des écrans de saisie

-          LIENS  après chaque lecture d’enregistrement, interventions sur les champs écrans après chaque lecture d’enregistrement

-          INIMOD  avant la réécriture de l’enregistrement, chargement des champs fichiers

-          MODIF  après la réécriture de l’enregistrement, intervention sur les paramètres champs avant la génération des écrans de saisie

-          APRES_MODIF  après saisie de chaque champs, intervention sur les champs écran

-          EXEBOUT  après appui sur un bouton bas d’écran. Seul le bouton « Validation » est intéressant, dans ce cas la variable REP vaut  « 1 » (attention c’est une valeur alphanumérique)

Contenu de la table PURTRS

Les données contenues dans la table PURTRS concernent le stockage du paramétrage des saisies du module achats modifiables par transaction.

Une normalisation précise doit être respectée, à chaque champ ajouté dans un écran doit correspondre la création de données dans la table PURTRS.

Les données ajoutées peuvent être de 4 types différents :

 

 Type de donnée

 Ecran

 Table PURTRS

 Menu

 Valeurs

 A

 Entête non saisissable

 AAAA

 AAAAFLG

 1

 1 = non / 2 = oui  (Affichage)

 B

 Entête saisissable

 BBBB

 BBBBCOD

 35

 1 = saisie / 2 = affiché / 3 = invisible

 C

 Ligne non saisissable

 CCCC

 CCCCFLG

 CCCCSCR

 1

 99

 1 = non / 2 = oui  (Affichage)

 1 = fiche+tableau / 2 = fiche / 3 = tableau

 D

 Ligne saisissable

 DDDD

 DDDDCOD

 DDDDSCR

 35

 99

 1 = saisie / 2 = affiché / 3 = invisible

 1 = fiche+tableau / 2 = fiche / 3 = tableau

Masques disponibles

 Transactions

 Ecrans saisie

Ajout de données

 Ecrans paramètrage

Types de donnée ajoutées

 Appels d'offre

 PQH0 Entête

 Oui

 PTA1

 A - B

 PQH1 Onglet Articles

 Oui

 PTA1

 C - D

 PQH2 Onglet Fournisseurs

 Non

 

 

 Demandes d'achat

 PSH0 Entête

 Non

 PTD0 Entête

 

 PSH1 Onglet Lignes

 Oui

 PTD1 Paramètres 1

 C

 PTD2 Paramètres 2

 D

 Commandes

 POH0 Entête

 Non

 PTC0 Entête

 

 POH1 Gestion

 Oui

 PTC1 Onglet Paramètres

 A

 PTC2 Onglet Entête

 B

 POH2 Lignes

 Oui

 PTC1 Onglet Paramètres

 C

 PTC3 Onglet Ligne 1

 D

 PTX4 Onglet Ligne 2

 

 POH3 Total

 Oui

 PTC1 Onglet Paramètres

 A

 PTC2 Onglet Entête

 B

 Plan de l'acheteur

 POI1 Entête et lignes

 Oui

 PTC1 Onglet Paramètres

 A - C

 PTC2 Onglet Entête

 B

 PTC3 Onglet Ligne 1

 D

 Contrats

 POC0 Entête

 Non

 PTT0 Entête

 

 POC1 Gestion

 Oui

 PTT1 Onglet Paramètres

 A

 PTT2 Onglet Entête

 B

 POC2 Article

 Oui

 PTT1 Onglet Paramètres

 A - C

 PTT3 Onglet Ligne 1

 B - D

 PTX4 Onglet Ligne 2

 

 POC3 Total

 Oui

 PTT1 Onglet Paramètres

 A

 PTT2 Onglet Entête

 B

 Factures

 PIH0 Entête

 Non

 PTF0 Entête

 

 PIH1 Gestion

 Oui

 PTF1 Paramètres

 A

 PTF2 Entête

 B

 PIH3 Lignes

 Oui

 PTF1 Paramètres

 C

 PTF3 Ligne

 D

 PIH4 Contrôle

 Oui

 PTF1 Paramètres

 A - C

 PTF3 Ligne

 B - D

Variables disponibles

Les variables suivantes sont  chargées lors de l'appel de l'action "PURTRS".

PACTION

Action GOBJET à l’origine de l’appel (RAZCRE, INICRE, CREATION, LIENS, INIMOD, MODIF, APRES_MODIF, EXEBOUT).

PVERSION

Valeur numérique du numéro de la version d’X3 utilisée (ex GVERSION=1.2.4  PVERSION=124).

 FJL

Type de transaction en cours de gestion (PTA=appels d’offre, PTD=demandes d’achat, PTC=commandes standards, PTT=contrats, PTF=factures).

 MFROM

Code de l'écran de saisie (PQH0, PQH1, PSH1, POH1, POH2, POH3, POI1, POC0, POC1, POC2, POC3, PIH0, PIH1, PIH3, PIH4, SCO0, SCO1, SCO2 et SCO3)

Tables ouvertes

Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte.

Table

Contenu significatif

Intitulé Table

PURTRS

Oui

Transactions de saisie achats

Remarques diverses

Les tables AWINDOW, AWINPAR, AMSK, AMSKZON, AMSKACT, ainsi que toutes les tables nécessaires à la gestion de la génération d'écrans et de traitements sont ouvertes mais ne doivent en aucun cas être modifiées dans le point d'entrée.

Exemple de l'exploitation du point d'entrée

#########################################################################

# Variables utilisables par le point d'entrée PURTRS                    #

#                                                                       #

#    PACTION    : Action GOBJET à l'origine de l'appel                  #

#    PVERSION   : Valeur numérique du numéro de version d'X3            #

#    FJL        : Type de transaction en cours                          #

#    MFROM      : Code de l'écran de saisie                             #

#                                                                       #

#########################################################################

$ACTION

Case ACTION

  When "PURTRS"

    Case FJL

      When "PTA"                    : # Transaction appels d'offre

      When "PTD"                    : # Transaction demandes d'achat

      When "PTC" : Gosub PURTRS_PTC : # Transaction commandes

      When "PTT"                    : # Transaction contrats

      When "PTF"                    : # Transaction factures

    Endcase

  When Default

Endcase

Return

 

#---------------------------------------------------------#

# Gestion du paramétrage des zones spécifiques commandes  #

# ------------------------------------------------------- #

# champ AAAA non saisissable dans l'onglet Gestion        #

#            défini en affiché sur l'écran de base POH1   #

# champ BBBB saisissable     dans l'onglet Total          #

#            défini en saisi   sur l'écran de base POH3   #

# champ CCCC non saisissable dans l'onglet Lignes         #

#            défini en affiché sur l'écran de base POH2   #

# Champ DDDD saisissable     dans l'onglet Lignes         #

#            défini en saisi   sur l'écran de base POH2   #

#---------------------------------------------------------#

 

$PURTRS_PTC

Case PACTION

  When "RAZCRE"

    [M:PTC1]AAAAFLG=1

    [M:PTC2]BBBBCOD=1

    [M:PTC1]CCCCFLG=1 : [M:PTC1]CCCCSCR=1 : Grizo [M:PTC1]CCCCSCR

    [M:PTC3]DDDDCOD=1 : [M:PTC3]DDDDSCR=1 : Actzo [M:PTC3]DDDDDCR

  When "LIENS"

    If [M:PTC1]AAAAFLG=0 [M:PTC1]AAAAFLG=1 : Endif

    If [M:PTC2]BBBBCOD=0 [M:PTC2]BBBBCOD=1 : Endif

    If [M:PTC1]CCCCFLG=0 [M:PTC1]CCCCFLG=1 : [M:PTC1]CCCCSCR=1 : Endif

    If [M:PTC3]DDDDCOD=0 [M:PTC3]DDDDCOD=1 : [M:PTC1]DDDDSCR=1 : Endif

    If [M:PTC1]CCCCFLG=1 Grizo [M:PTC1]CCCCSCR Else Actzo [M:PTC1]CCCCSCR : Endif

    If [M:PTC3]DDDDCOD=3 Grizo [M:PTC3]DDDDSCR Else Actzo [M:PTC3]DDDDSCR : Endif

  When "INICRE"

  When "INIMOD"

  When "CREATION", "MODIF"

    Case MFROM

      When "POH1"

        If [M:PTC1]AAAAFLG=1

          TZONE(IZON)="AAAA" : TMOD(IZON)=3 : IZON+=1

        Endif

      When "POH3"

        If [M:PTC2]BBBBCOD>1

          TZONE(IZON)="BBBB" : TMOD(IZON)=[M:PTC2]BBBBCOD : IZON+=1

        Endif

      When "POH2"

        If [M:PTC1]CCCCFLG=1

          TZONE(IZON)="CCCC" : TMOD(IZON)=3 : IZON+=1

        Endif

        If [M:PTC1]CCCCSCR>1

          TZONE(IZON)="CCCC" : TMOD(IZON)=9 : TINT(IZON)=num$([M:PTC1]CCCCSCR) : IZON+=1

        Endif

        If [M:PTC3]DDDDCOD>1

          TZONE(IZON)="DDDD" : TMOD(IZON)=[M:PTC2]DDDDCOD : IZON+=1

        Endif

        If [M:PTC3]DDDDSCR>1

          TZONE(IZON)="DDDD" : TMOD(IZON)=9 : TINT(IZON)=num$([M:PTC3]DDDDSCR) : IZON+=1

        Endif

    Endcase

  When "APRES_MODIF"

    If PVERSION<130

      Case zoncou

        When "CCCCFLG"

          If val(zc)=1

            [M:PTC1]CCCCSCR=1

            If !GIMPORT Affzo [M:PTC1]CCCCSCR : Grizo [M:PTC1]CCCCSCR: Endif

          Elsif !GIMPORT

            Actzo [M:PTC1]CCCCSCR

          Endif

        When "DDDDCOD"

          If val(zc)=3

            [M:PTC3]DDDDSCR=1

            If !GIMPORT Affzo [M:PTC3]DDDDSCR : Grizo [M:PTC3]DDDDSCR : Endif

          Elsif !GIMPORT

            Actzo [M:PTC3]DDDDSCR

          Endif

      Endcase

    Else

      Case COUZON

        When "CCCCFLG"

          If val(CZ)=1

            [M:PTC1]CCCCSCR=1

            If !GIMPORT Affzo [M:PTC1]CCCCSCR : Grizo [M:PTC1]CCCCSCR: Endif

          Elsif !GIMPORT

            Actzo [M:PTC1]CCCCSCR

          Endif

        When "DDDDCOD"

          If val(CZ)=3

            [M:PTC3]DDDDSCR=1

            If !GIMPORT Affzo [M:PTC3]DDDDSCR : Grizo [M:PTC3]DDDDSCR : Endif

          Elsif !GIMPORT

            Actzo [M:PTC3]DDDDSCR

          Endif

      Endcase

    Endif

Endcase

Return

 

PURTRSWIN : Intervention sur les fenêtres générées

Ce point d’entrée concerne la gestion des transactions de saisie des achats. Il est commun aux transactions d’appels d’offre, demandes d’achat, commandes, commandes ouvertes, réceptions, retours et factures.

Il permet de modifier la fenêtre générée par la transaction, notamment pour supprimer un onglet spécifique.

Ce point d‘entrée est situé dans le traitement SUBPTX.

Contexte et mode de fonctionnement

Transaction

Il y a une transaction en cours. La variable GOK est utilisée et testée. Elle est égale à 1. Elle peut être positionnée à 0 si on désire abandonner la transaction.

Fichier trace

Il  n’y a pas de fichier trace ouvert.

Différents cas d’appel

 Il est appelé dans les actions CREATION,  MODIF,  ANNULE dans les traitements :

-          SUBPTA : Transactions appels d’offre

-          SUBPTD : Transactions demandes d’achat

-          SUBPTE : Transactions ordres de sous-traitance

-          SUBPTC : Transactions commandes

-          SUBPTT : Transactions commandes ouvertes

-          SUBPTR : Transactions réceptions

-          SUBPTN : Transactions retours fournisseurs

 -         SUBPTF : Transactions factures d’achat

Masques disponibles

Transaction

Ecrans de saisie

 

Ecran de paramétrage

 

 

 

Appels d’offfe

PQH1 : Ecran Appels d’offre

PTA0 : Ecran Entête

 

 

PTA1 : Onglet Paramètres 1

 

 

PTA2 : Onglet Paramètres 2

 

 

 

Demandes d’achat

PSH0 : Ecran Entête

PTD0 : Ecran Entête

 

PSH1 : Onglet Lignes

PTD1 : Onglet Paramètres 1

 

 

PTD2 : Onglet Paramètres 2

 

 

 

 Ordres de sous-traitance

SCO0 : Ecran Entête

PTE0 : Ecran Entête

 

SCO1 : Onglet Article Gestion

PTE1 : Onglet Paramètres

 

SCO2 : Onglet Matières

PTE2 : Onglet Documents

 

SCO3 : Onglet Service

PTE3 : Onglet Saisie

 

 

 

Commandes

POH0 : Ecran Entête

PTC0 : Ecran Entête

 

POH1 : Onglet Gestion

PTC1 : Onglet Paramètres

 

POH2 : Onglet Lignes

PTC2 : Onglet Entête

 

POH3 : Onglet Total

PTC3 : Onglet Ligne 1

 

POI1 : Ecran Plan de l’acheteur

PTC4 : Onglet Ligne 2

 

 

PTX4 : Onglet Ligne 3

 

 

 

Cdes ouvertes

POC0 : Ecran Entête

PTT0 : Ecran Entête

 

POC1 : Onglet Gestion

PTT1 : Onglet Paramètres

 

POC2 : Onglet Article

PTT2 : Onglet Entête

 

POC3 : Onglet Total

PTT3 : Onglet Ligne 1

 

 

PTX4 : Onglet Ligne 2

 

 

 

Réceptions

PTH1 : Ecran Réceptions

PTR0 : Ecran Entête

 

 

PTR1 : Onglet Paramètres

 

 

PTR2 : Onglet Ligne 1

 

 

PTR3 : Onglet Ligne 2

 

 

STOETR2 : Onglet Stock

 

 

 

Retours

PNH1 : Ecran Retours

PTN0 : Ecran Entête

 

 

PTN1 : Onglet Paramètres

 

 

PTN2 : Onglet Ligne 1

 

 

PTN3 : Onglet Ligne 2

 

 

PTN4 : Onglet Ligne 3

 

 

 

Factures

PIH0 : Ecran Entête

PTF0 : Ecran Entête

 

PIH1 : Onglet Gestion

PTF1 : Onglet Paramètres

 

PIH3 : Onglet Ligne

PTF2 : Onglet Entête

 

PIH4 : Onglet Contrôle

PTF3 : Onglet Ligne

Variables disponibles

On dispose des variables suivantes pour définir le traitement à effectuer:

[F :AWI]                          La classe [F:AWI] est chargée et peut être modifiée si l’on désire intervenir sur la fenêtre générée.

[F :PTR]PTRTYP         Type de transaction

[F :PTR]PTRNUM        Code transaction

WINREF                        Nom de la fenêtre de référence

                                      ="O"+Nom de l'OBJet ( "PQH", "PSH", "POH", "POC", "PTH", "PNH", "PIH", "SCO"  )

NOMWIN                       Nom de la fenêtre générée pour cette transaction

                                       ="WO"+Nom de l'OBJet+Code transaction 

Type de transaction

Désignation

Objet

WINREF

NOMWIN

1

Appel d’offre

PQH

OPQH

"WOPQH" + [F:PTR]PTRNUM

2

Demandes d’achat

PSH

OPSH

"WOPSH" + [F:PTR]PTRNUM

3

Commandes

POH

OPOH

"WOPOH" + [F:PTR]PTRNUM

5

Cdes ouvertes

POC

OPOC

"WOPOC" + [F:PTR]PTRNUM

6

Réceptions

PTH

OPTH

"WOPTH" + [F:PTR]PTRNUM

7

Retours

PNH

OPNH

"WOPNH" + [F:PTR]PTRNUM

8

Factures

PIH

OPIH

"WOPIH" + [F:PTR]PTRNUM

9

Ordres de sous-traitance

 SCO

OSCO

"WOSCO" + [F:PTR]PTRNUM

Tables ouvertes 

 Table

Traitement

Contenu significatif

Intitulé Table

PURTRS

SUBPTA

SUBPTD

SUBPTE

SUBPTC

SUBPTT

SUBPTR

SUBPTN

SUBPTF

 Oui

Transactions de saisie achats

AWINDOW

 

Oui

Dictionnaire des fenêtres

Les tables AWINDOW, AWINPAR, AWINBRO, AWINBOUT, AMSK, AMSKPAR, AMSKZON, ainsi que toutes les tables nécessaires à la gestion génération des écrans et traitements sont ouvertes.

 

PURTRSAWB : Intervention sur les browsers des fenêtres générées

Ce point d’entrée concerne la gestion des transactions de saisie des achats. Il est commun aux transactions d’appels d’offre, demandes d’achat, ordres de sous-traitance, commandes, commandes ouvertes, réceptions, retours et factures.

Il permet de modifier les browsers de la fenêtre générée par la transaction.

Ce point d‘entrée est situé dans le traitement SUBPTX.

Contexte et mode de fonctionnement

Transaction

Il y a une transaction en cours. La variable GOK est utilisée et testée. Elle est égale à 1. Elle peut être positionnée à 0 si on désire abandonner la transaction.

Fichier trace

Il  n’y a pas de fichier trace ouvert.

Différents cas d’appel

 Il est appelé dans les actions CREATION,  MODIF,  ANNULE dans les traitements :

-          SUBPTA : Transactions appels d’offre

-          SUBPTD : Transactions demandes d’achat

-          SUBPTE : Transactions ordres de sous-traitance

-          SUBPTC : Transactions commandes

-          SUBPTT : Transactions commandes ouvertes

-          SUBPTR : Transactions réceptions

-          SUBPTN : Transactions retours fournisseurs

 -         SUBPTF : Transactions factures d’achat

Masques disponibles

Transaction

Ecrans de saisie

 

Ecran de paramétrage

 

 

 

Appels d’offfe

PQH1 : Ecran Appels d’offre

PTA0 : Ecran Entête

 

 

PTA1 : Onglet Paramètres 1

 

 

PTA2 : Onglet Paramètres 2

 

 

 

Demandes d’achat

PSH0 : Ecran Entête

PTD0 : Ecran Entête

 

PSH1 : Onglet Lignes

PTD1 : Onglet Paramètres 1

 

 

PTD2 : Onglet Paramètres 2

 

 

 

 Ordres de sous-traitance

SCO0 : Ecran Entête

PTE0 : Ecran Entête

 

SCO1 : Onglet Article Gestion

PTE1 : Onglet Paramètres

 

SCO2 : Onglet Matières

PTE2 : Onglet Documents

 

SCO3 : Onglet Service

PTE3 : Onglet Saisie

 

 

 

Commandes

POH0 : Ecran Entête

PTC0 : Ecran Entête

 

POH1 : Onglet Gestion

PTC1 : Onglet Paramètres

 

POH2 : Onglet Lignes

PTC2 : Onglet Entête

 

POH3 : Onglet Total

PTC3 : Onglet Ligne 1

 

POI1 : Ecran Plan de l’acheteur

PTC4 : Onglet Ligne 2

 

 

PTX4 : Onglet Ligne 3

 

 

 

Cdes ouvertes

POC0 : Ecran Entête

PTT0 : Ecran Entête

 

POC1 : Onglet Gestion

PTT1 : Onglet Paramètres

 

POC2 : Onglet Article

PTT2 : Onglet Entête

 

POC3 : Onglet Total

PTT3 : Onglet Ligne 1

 

 

PTX4 : Onglet Ligne 2

 

 

 

Réceptions

PTH1 : Ecran Réceptions

PTR0 : Ecran Entête

 

 

PTR1 : Onglet Paramètres

 

 

PTR2 : Onglet Ligne 1

 

 

PTR3 : Onglet Ligne 2

 

 

STOETR2 : Onglet Stock

 

 

 

Retours

PNH1 : Ecran Retours

PTN0 : Ecran Entête

 

 

PTN1 : Onglet Paramètres

 

 

PTN2 : Onglet Ligne 1

 

 

PTN3 : Onglet Ligne 2

 

 

PTN4 : Onglet Ligne 3

 

 

 

Factures

PIH0 : Ecran Entête

PTF0 : Ecran Entête

 

PIH1 : Onglet Gestion

PTF1 : Onglet Paramètres

 

PIH3 : Onglet Ligne

PTF2 : Onglet Entête

 

PIH4 : Onglet Contrôle

PTF3 : Onglet Ligne

Variables disponibles

On dispose des variables suivantes pour définir le traitement à effectuer:

[F :AWB]                          La classe [F:AWB] est chargée et peut être modifiée si l’on désire intervenir sur le browser de la fenêtre générée.

[F :PTR]PTRTYP         Type de transaction

[F :PTR]PTRNUM        Code transaction

WINREF                        Nom de la fenêtre de référence

                                      ="O"+Nom de l'OBJet ( "PQH", "PSH", "POH", "POC", "PTH", "PNH", "PIH", "SCO"  )

NOMWIN                       Nom de la fenêtre générée pour cette transaction

                                       ="WO"+Nom de l'OBJet+Code transaction 

Type de transaction

Désignation

Objet

WINREF

NOMWIN

1

Appel d’offre

PQH

OPQH

"WOPQH" + [F:PTR]PTRNUM

2

Demandes d’achat

PSH

OPSH

"WOPSH" + [F:PTR]PTRNUM

3

Commandes

POH

OPOH

"WOPOH" + [F:PTR]PTRNUM

5

Cdes ouvertes

POC

OPOC

"WOPOC" + [F:PTR]PTRNUM

6

Réceptions

PTH

OPTH

"WOPTH" + [F:PTR]PTRNUM

7

Retours

PNH

OPNH

"WOPNH" + [F:PTR]PTRNUM

8

Factures

PIH

OPIH

"WOPIH" + [F:PTR]PTRNUM

9

Ordres de sous-traitance

 SCO

OSCO

"WOSCO" + [F:PTR]PTRNUM

Tables ouvertes 

 Table

Traitement

Contenu significatif

Intitulé Table

PURTRS

SUBPTA

SUBPTD

SUBPTE

SUBPTC

SUBPTT

SUBPTR

SUBPTN

SUBPTF

 Oui

Transactions de saisie achats

AWINDOW

 

Oui

Dictionnaire des fenêtres

Les tables AWINDOW, AWINPAR, AWINBRO, AWINBOUT, AMSK, AMSKPAR, AMSKZON, ainsi que toutes les tables nécessaires à la gestion génération des écrans et traitements sont ouvertes.