Troubleshooting picking ricevimenti da creazione fattura acquisto

From SageDev KB
Jump to navigation Jump to search

Quando si crea una fattura di acquisto si può andare in picking dal browser "Selezione ricevimenti" (oggetto PT1)

Il browser "Selezione ricevimenti" è gestito dai sorgente SUBPIH (standard) e da SPVPIH (verticale italiano). La prima condizione di filtro è che la riga di ricevimento NON sia fatturata (non completamente fatturata) PRECEIPTD.LININVFLG = 1.

FILGAUSUP.jpg

in SUBPIHA, dove viene impostato FILGAUSUP, troviamo:

$OUVRE_BOITE
#-------------------------------#
# Après ouverture de la fenêtre #
#-------------------------------#
#----- Chargement des noms des Currbox de chaque tiroir -----#
Global Char GBOXPI2(10), GBOXPO1(10), GBOXPT1(10), GBOXPI1(10), GBOXPN1(10), GBOXSI2(10), GBOXLO1(10)
GBOXPI2="GAU_CHE"+num$(find("PI2",OBJLIS(1..8))) : # Liste des factures par fournisseur
GBOXPO1="GAU_CHE"+num$(find("PO1",OBJLIS(1..8))) : # Picking des commandes
GBOXPT1="GAU_CHE"+num$(find("PT1",OBJLIS(1..8))) : # Picking des réceptions


[...]


$FILGAUCHE
#----------------------------------------------#
# Filtrer les enregistrements listes de gauche #
#----------------------------------------------#  

[...]

 Elsif currbox=GBOXPT1 : # Picking des réceptions
   If [M:PIH0]PIHTYP<>1
     FILGAUSUP(0) ="[F:PTD]LININVFLG=9" : FILGAUSUP(1)=""
   Else
     FILGAUSUP(0) ="[F:PTD]LININVFLG=1 & [F:PTD]BPSINV=[M:PIH0]BPR"
     If [M:PCIW]WITMREF<>"" FILGAUSUP(0)+=" & pat([F:PTD]ITMREF,[M:PCIW]WITMREF)<>0" : Endif
     If [M:PCIW]WNUMRCP<>"" FILGAUSUP(0)+=" & pat([F:PTD]PTHNUM,[M:PCIW]WNUMRCP)<>0" : Endif
     If [M:PCIW]WNUMCDE<>"" FILGAUSUP(0)+=" & pat([F:PTD]POHNUM,[M:PCIW]WNUMCDE)<>0" : Endif
     FILGAUSUP(0)-="& [F:PTD]LINTYP<3"
     If [M:PCIW]WBPSNDE<>""
       FILGAUSUP(0)+=" & pat([F:PTH]BPSNDE,[M:PCIW]WBPSNDE)<>0"
     Endif
     FILGAUSUP(1)="& [F:FCY]LEGCPY=GSOCIETE"
     If GCTLDATORI=2  FILGAUSUP(1)-="& (([F:PTH]NDEDAT=[0/0/0] & [F:PTH]RCPDAT<=[M:PIH0]ACCDAT)|([F:PTH]NDEDAT<>[0/0/0] & min([F:PTH]NDEDAT,[F:PTH]RCPDAT)<=[M:PIH0]ACCDAT))" 
     Endif
     FILGAUSUP(1)-="& ([F:PTH]BETFCY<>2  | [F:PTH]BETCPY=2)"
     GBIDC3="" : Call FILROLE("PTH",GBIDC3) From SUBARL
     If GPIHQTYRET = 1
       FILGAUSUP(3) ="& [F:PTD]RTNQTYPUU<[F:PTD]QTYPUU"
       FILGAUSUP(3) -="& "+GBIDC3
     Else
       FILGAUSUP(3) ="& "+GBIDC3
     Endif
   Endif

Andando in Situazione riga:

PTH Situazione riga.gif

si possono vedere le qta fatturate; se il totale supera la qta ricevuta ovviamente la riga non comparirà perchè è già stato fatturato tutto.