Punkty wejścia > Moduł Zakupy > Standardowy skrypt SUBPTX 

PURTRS: Interwencja w obrębie zarządzania polami specjalnymi/niestandardowymi

Entry point znajduje się w obrębie SUBPTX procesu, zarządzania ekranami wprowadzania dot. zakupów i wywołuje czynność „PURTRS”.

Celem tej czynności jest umożliwienie interwencji w zarządzanie polami specjalnymi/niestandardowymi w większym stopniu w trakcie wyświetlania niż wprowadzania danych.

Ten Entry point dotyczy każdego ekranu wprowadzania dot. zakupów, tzn. zapytań ofertowych, zapotrzebowań zakupu, klasycznych zamówień, otwartych zleceń do kontraktów i faktur.

Kontekst i metoda działania

Transakcja

Transakcja w toku dla czynności INICRE, CREATION, INIMOD i MODIF.

Brak transakcji w toku dla czynności RAZCRE, LIENS i APRES_MODIF

Plik log

Brak otwartego pliku log.

Różne przypadki wywołań

Wywołanie wykonywane jest podczas zarządzania ustawieniami ekranu wprowadzania:

- zapytania ofertowe

- zapotrzebowania zakupu

- standardowe zamówienia

- otwarte zlecenia do kontraktów

- faktury

oraz dla następujących czynności w związku z GOBJET:

- RAZCRE w trybie tworzenia, inicjacja pół ekranów

- INICRE przed utworzeniem wpisu, ładowanie pól plików

- CREATION po utworzeniu wpisu, interwencja w parametry pola przed wygenerowaniem ekranów wprowadzania

- LIENS po każdorazowym odczycie wpisu, interwencje na polach ekranów po każdorazowym odczycie wpisu

- INIMOD przed ponownym utworzeniem rekordu, ładowanie pól plików.

- MODIF po ponownym utworzeniu wpisu, interwencja na polach ekranów przed wygenerowaniem ekranów wprowadzania

- APRES_MODIF po wprowadzeniu każdego z pól, interwencja na polach ekranów

- EXEBOUT po użyciu przycisku w dole ekranu. Wyłącznie przycisk „Zatwierdzenie” powinien być brany pod uwagę, w tym przypadku zmienna REP musi wynosić „1” (uwaga — jest to numer alfanumeryczny).

Zawartość tabeli PURTRS

Dane zawarte w tabeli PURTRS dotyczą przechowywania konfiguracji wpisów z modułu zakupowego modyfikowalnych w ramach operacji.

Obowiązuje ściśle określony standard, każde pole dodane na ekranie musi odpowiadać danym w tabeli PURTRS.

Dodane dane mogą być czterech różnych typów:

Typ danych

Ekran

Tabela PURTRS

Menu

Wartości

A

Nagłówek bez możliwości wprowadzania wpisów

AAAA

AAAAFLG

1

1 = nie / 2 = tak (Wyświetl)

B

Nagłówek z możliwością wprowadzania wpisów

BBBB

BBBBCOD

35

1 = wprowadź / 2 = wyświetl / 3 = ukryte

C

Pozycja bez możliwości wprowadzania wpisów

CCCC

CCCCFLG

CCCCSCR

1

99

1 = nie / 2 = tak (Wyświetl)

1 = rekord + tabela / 2 = rekord / 3 = tabela

D

Pozycja z możliwością wprowadzania wpisów

DDDD

DDDDCOD

DDDDSCR

35

99

1 = wprowadź / 2 = wyświetl / 3 = ukryte

1 = rekord + tabela / 2 = rekord / 3 = tabela

Dostępne maski

Transakcje

Ekrany wprowadzania

Dodaj dane

Ekrany konfiguracji

Typy dodanych danych

Zapytanie ofertowe

Nagłówek PQH0

Tak

PTA1

A - B

Zakładka Artykuł PQH1

Tak

PTA1

C - D

Zakładka Dostawca PQH2

Nie

Zapotrzebowania zakupu

Nagłówek PSH0

Nie

Nagłówek PTD0

Zakładka Pozycje PSH1

Tak

Parametry 1 PTD1

C

Parametry 2 PTD2

D

Zamówienia

Nagłówek POH0

Nie

Nagłówek PTC0

Zarządzenie POH1

Tak

Zakładka Parametry PTC1

A

Zakładka Nagłówek PTC2

B

Pozycje POH2

Tak

Zakładka Parametry PTC1

C

Zakładka Pozycja 1 PTC3

D

Zakładka Pozycja 2 PTX4

Suma POH3

Tak

Zakładka Parametry PTC1

A

Zakładka Nagłówek PTC2

B

Plan kupującego

Nagłówek i pozycje POI1

Tak

Zakładka Parametry PTC1

A - C

Zakładka Nagłówek PTC2

B

Zakładka Pozycja 1 PTC3

D

Kontrakty

Nagłówek POC0

Nie

Nagłówek PTT0

Zarządzenie POC1

Tak

Zakładka Parametry PTT1

A

Tabela Nagłówek PTT2

B

Artykuł POC2

Tak

Zakładka Parametry PTT1

A - C

Zakładka Pozycja 1 PTT3

B - D

Zakładka Pozycja 2 PTX4

Suma POC3

Tak

Zakładka Parametry PTT1

A

Tabela Nagłówek PTT2

B

Faktury

Nagłówek PIH0

Nie

Nagłówek PTF0

Zarządzenie PIH1

Tak

Parametry PTF1

A

Nagłówek PTF2

B

Pozycje PIH3

Tak

Parametry PTF1

C

Pozycja PTF3

D

Kontrola PIH4

Tak

Parametry PTF1

A - C

Pozycja PTF3

B - D

Adres PIH2

Tak

Parametry PTF1

A

Nagłówek PTF2

B

Dostępne zmienne

Następujące zmienne są ładowane w chwili wywołania czynności „PURTRS”.

PACTION

Czynność „GOBJET” w początkowym punkcie wywołania (RAZCRE, INICRE, CREATION, LIENS, INIMOD, MODIF, APRES_MODIF, EXEBOUT).

PVERSION

Wartość numeryczna użytego numeru wersji X3 (np. GVERSION=1.2.4 PVERSION=124).

FJL

Aktualnie zarządzany rodzaj transakcji (PTA = zapytanie ofertowe, PTD = zapotrzebowanie zakupu, PTC = zamówienia standardowe, PTT = zamówienia w ramach kontraktu, PTF = faktury).

MFROM

(PQH0, PQH1, PSH1, POH1, POH2, POH3, POI1, POC0, POC1, POC2, POC3, PIH0, PIH1, PIH2, PIH3 and PIH4)

Otwarte tabele

W tabeli poniżej flaga istotnej treści wskazuje, że treść jest zgodna z kontekstem.

Tabela

Istotna treść

Tytuł tabeli

PURTRS

Tak

Ekrany wprowadzania dot. zakupów

Uwagi dodatkowe

Tabele AWINDOW, AWINPAR, AMSK, AMSKZON, AMSKACT a także wszystkie tabele niezbędne w zarządzaniu generowaniem ekranów oraz procesami są otwarte, jednak nie wolno ich modyfikować w Entry point.

Przykład zastosowania Entry point

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

# Zmienne, które można zastosować z entry point PURTRS #

# #

# PACTION : Czynność GOBJET na początku wywołania #

# PVERSION : Wartość numeryczna numeru wersji X3 #

# FJL : Typ transakcji w toku #

# MFROM : Kod dla ekranu wpisów #

# #

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

$ACTION

Przykład ACTION

When 'PURTRS'

Case FJL

W przypadku 'PTA' : # Transakcja zapytania ofertowego

W przypadku 'PTD' : # Transakcja zapotrzebowania zakupu

When 'PTC' : Gosub PURTRS_PTC : # Transakcja zamówień

W przypadku 'PTT' : # Transakcja zleceń do kontraktu

W przypadku 'PTF' : # Transakcja faktur

Endcase

When Default:

Endcase

Return

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

# Zarządzanie ustawieniami pól specjalnych/niestandardowych w zamówieniach #

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

# pole AAAA bez możliwości wprowadzania w zakładce Zarządzanie #

# zdefiniowane w wyświetlaczu na ekranie bazy POH1 #

# pole BBBB z możliwością wprowadzania w zakładce Suma #

# zdefiniowane w trybie wprowadzania na ekranie bazy POH3 #

# pole CCCC bez możliwości wprowadzania w zakładce Pozycje #

# zdefiniowane w wyświetlaczu na ekranie bazy POH2 #

# Pole DDDD z możliwością wprowadzania w zakładce Pozycja #

# zdefiniowane w trybie wprowadzania na ekranie bazy 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: Interwencja w wygenerowane faktury

Ten Entry point dotyczy zarządzania ekranami wprowadzania dot. zakupu. Jest on wspólny dla wszystkich transakcji — ofert, zapotrzebowań zakupu, zamówień, zamówień kontraktowych, przyjęć, zwrotów i faktur.

Służy do modyfikowania okna wygenerowanego przez transakcję, w szczególności do usuwania zakładki specjalnej/niestandardowej.

Entry point znajduje się w obrębie procesu SUBPTX.

Kontekst i metoda działania

Transakcja

Jedna transakcja w toku. Zmienna GOK została użyta i przetestowana. Jej wartość wynosi 1. Może mieć wartość 0, w przypadku gdy transakcję należy anulować.

Plik log

Brak otwartego pliku log.

Różne przypadki wywołań

Wywoływana jest w trakcie czynności CREATION, MODIF i ANNULE w procesach:

- SUBPTA: Transakcje zapytań ofertowych

- SUBPTD: Transakcje zapotrzebowań zakupu

- SUBPTC: Transakcje na zleceniach

- SUBPTT: Transakcje na zleceniach do kontraktu

- SUBPTR: Transakcje przyjęcia

- SUBPTN: Transakcje zwrotu dostawcy

- SUBPTF: Transakcje faktur zakupu

Dostępne maski

Transakcja

Ekrany wprowadzania

Ekrany konfiguracji

Zapytanie ofertowe

PQH1: Ekran zapytań ofertowych

PTA0: Ekran Nagłówek

PTA1: Zakładka Parametry 1

PTA2: Zakładka Parametry 2

Zapotrzebowania zakupu

PSH0: Ekran Nagłówek

PTD0: Ekran Nagłówek

PSH1: Zakładka Pozycje

PTD1: Zakładka Parametry 1

PTD2: Zakładka Parametry 2

Zamówienia

POH0: Ekran Nagłówek

PTC0: Ekran Nagłówek

POH1: ZakładkaZarządzanie

PTC1: Zakładka Parametry

POH2: Zakładka Pozycje

PTC2: Zakładka Nagłówek

POH3: Zakładka Suma

PTC3: Zakładka Pozycja 1

POI1: Ekran Plan kupującego

PTC4: Zakładka Pozycja 2

PTX4: Zakładka Pozycja 3

Zlecenia do kontraktu

POC0: Ekran Nagłówek

PTT0: Ekran Nagłówek

POC1: ZakładkaZarządzanie

PTT1: Zakładka Parametry

POC2: Zakładka Artykuł

PTT2: Zakładka Nagłówek

POC3: Zakładka Suma

PTT3: Zakładka Pozycja 1

PTX4: Zakładka Pozycja 2

Przyjęcia

PTH1: Ekran Przyjęcia

PTR0: Ekran Nagłówek

PTR1: Zakładka Parametry

PTR2: Zakładka Pozycja 1

PTR3: Zakładka Pozycja 2

STOETR2: Zakładka Zapasy

Zwroty

PNH1: Ekran Zwroty

PTN0: Ekran Nagłówek

PTN1: Zakładka Parametry

PTN2: Zakładka Pozycja 1

PTN3: Zakładka Pozycja 2

PTN4: Zakładka Pozycja 3

Faktury

PIH0: Ekran Nagłówek

PTF0: Ekran Nagłówek

PIH1: ZakładkaZarządzanie

PTF1: Zakładka Parametry

PIH3: Zakładka pozycji

Zakładka nagłówka PTF2

PIH4: Zakładka kontroli

PTF3: Zakładka pozycji

PIH2: Zakładka adresów

Dostępne zmienne

Następujące zmienne są dostępne na potrzeby zdefiniowania procesu do przeprowadzenia:

[F :AWI]Klasa [F :AWI] jest ładowana i może ulec modyfikacji w przypadku konieczności interwencji na wygenerowanym oknie.

[F :PTR]PTRTYPRodzaj transakcji

[F :PTR]PTRNUMKod transakcji

WINREFNazwa okna referencji

='O'+Name of the OBJect ( 'PQH', 'PSH', 'POH', 'POC', 'PTH', 'PNH', 'PIH' )

NOMWINNazwa okna wygenerowanego dla potrzeb tej transakcji

='WO'+Name of the OBJect+Transaction code

Rodzaj transakcji

Opis

Obiekt

WINREF

NOMWIN

1

Zapytanie ofertowe

PQH

OPQH

'WOPQH' + [F:PTR]PTRNUM

2

Zapotrzebowania zakupu

PSH

OPSH

'WOPSH' + [F:PTR]PTRNUM

3

Zamówienia

POH

OPOH

'WOPOH' + [F:PTR]PTRNUM

5

Zlecenia do kontraktu

POC

OPOC

'WOPOC' + [F:PTR]PTRNUM

6

Przyjęcia

PTH

OPTH

'WOPTH' + [F:PTR]PTRNUM

7

Zwroty

PNH

OPNH

'WOPNH' + [F:PTR]PTRNUM

8

Faktury

PIH

OPIH

'WOPIH' + [F:PTR]PTRNUM

Otwarte tabele

Tabela

Proces

Istotna treść

Tytuł tabeli

PURTRS

SUBPTA

SUBPTD

SUBPTC

SUBPTT

SUBPTR

SUBPTN

SUBPTF

Tak

Ekrany wprowadzania dot. zakupów

AWINDOW

Tak

Lista okien

Tabele AWINDOW, AWINPAR, AWINBRO, AWINBOUT, AMSK, AMSKPAR, AMSKZON a także wszystkie tabele niezbędne w zarządzaniu generowaniem ekranów oraz procesami są otwarte.