Integracijos diegimas

Prieš pradedant diegti GPAIS Rivile GAMA programoje, reikia užsiregistruoti GPAIS sistemoje, joje apsirašyti prekinių vienetų srautus, pakuočių rūšis ir visus kitus privalomus klasifikatorius, atsisiųti privatų raktą bei vartotojo atstovaujamų subjektų registracijos sąrašą.

Pagrindiniai punktai, ką reikia žinoti ir atlikti GPAIS sistemoje, aprašyti GPAIS pagrindai.

Pagrindiniai diegimo žingsniai :

  • suinstaliuojamas OpenSSL - aprašymas ;
  • iš GPAIS atsisiunčiamas privatus raktas;
  • iš GPAIS atsisiunčiamas vartotojo atstovaujamų subjektų registracijos sąrašas;
  • failas gpais.app įrašomas į RIV_GAMA arba RIV_GAMA\ALL katalogą;
  • SISTEMOS INIT-e aprašomi GPAIS parametrai - aprašymas;
  • užpildomi parametrai GPAIS_OPENSS ir GPAIS_VART - aprašymas ;
  • sukuriamas dokumentų registras, skirtas suformuotų GPAIS duomenų saugojimui - aprašymas;
  • prekių kortelėse matavimo vienetų koregavimo lange užprogramuojamas skirtukas "Prekės GPAIS pakuotės" - aprašymas;
  • užprogramuojami klavišai tuose moduliuose, iš kurių bus formuojami GPAIS duomenys: pardavimo, pirkimo, atsargų, gamybos operacijose;
  • dokumentų registre užprogramuojami klavišai ryšiui su GPAIS sistema: duomenų siuntimui ir šalinimui.

Duomenys į GPAIS gali būti formuojami iš:

  • pardavimo operacijų, kurių tipas "Važtaraštis",
  • pirkimo operacijų, kurių tipas "Važtaraštis",
  • atsargų operacijų, kuriose prekės nurašomos (kiekiai minusiniai).
  • gamybos operacijų, kurių tipas "Surinkimas" (komponentėse esančioms prekėms).

Pardavimo (pirkimo, atsargų, gamybos) operacijos :

  • operacijų sąraše sukuriamas papildomas stulpelis - jame bus rodoma ar dokumentas suformuotas į istoriją;
  • operacijų sąraše užprogramuojamas klavišas GPAIS istorijos formavimui;
  • operacijų sąraše užprogramuojamas klavišas GPAIS registro formavimui.

Dokumentų registro analitinės operacijos:

  • dokumentų registro analitinėse operacijose užprogramuojamas klavišas prekinių vienetų/gaminių siuntimui;
  • dokumentų registro analitinėse operacijose užprogramuojamas klavišas žurnalo siuntimui ;
  • dokumentų registro analitinėse operacijose užprogramuojamas klavišas žurnalo šalinimui iš GPAIS;
  • dokumentų registro analitinėse operacijose užprogramuojamas klavišas statuso "Nusiųsta" pakeitimui.

OpenSSL suinstaliavimas ir registracijos duomenų iš GPAIS atsisiuntimas.

Aprašymas faile:

OPEN_SSL_ir_GPAIS.zip

Importo programos įrašymas.

Į RIV_GAMA arba RIV_GAMA\ALL katalogą įrašomas failas gpais.app.

GPAIS parametrų aprašymas Sistemos INIT-e.

Sistemos INIT-e aprašomi GPAIS parametrai. INIT-ą užprogramuoti gali vartotojas, turintis administratoriaus teises (MASTER).

Atstovaujamų subjektų srautų registracijos ID atsisiunčiami iš GPAIS sistemos. Kaip tai atliekama, aprašyta Atstovaujamų subjektų srautų sąrašas.

GPAIS asmeninio parašo gavimas iš GPAIS sistemos aprašytas čia.

m.loGPAIS=GPAIS()
m.loGPAIS.pakuotes_id="1" && Pakuotės registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.alyvos_id="2" && Alyvos registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.transporto_id="3" && Transporto registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.apmokestinamu_id="4" && Apmokestinamų gaminių registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.bateriju_id="5" && Baterijų registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.elektronikos_id="6" && Elektronikos registracijos ID iš GPAIS sistemos eksportuoto failo subjektuRegistracijosSarasas.csv
m.loGPAIS.debug=.f. && Jei .f., tai duomenys keliami į GPAIS, jei .t., tai duomenys į GPAIS nekeliami, o failas suformuojamas į pasirinktą katalogą. Default .f. 
m.loGPAIS.test=.f. && Jei .t., tai siuntimas vykdomas į test aplinką, jei .f., tada failas siunčiamas į produkcinę aplinką. Default .f.

m.loGPAIS.openssl_katalogas="C:\Program Files\OpenSSL-Win64\bin" && OpenSSL.exe katalogas. Jei nenurodytas parametras GPAIS_OPENSS parametrų sąraše, tuomet naudojama init reikšmė 
m.loGPAIS.asm_parasas="C:\Users\mindaugas\Desktop\Rivile\GPAIS standartas V2\gpaisAsmeninisParasas\id_rsa" && id_rsa failo pilnas kelias su id_rsa. Jei nenurodytas parametras GPAIS_VART parametrų sąraše, tuomet naudojama init reikšmė 
m.loGPAIS.gpais_vartotojas="mindaugas.cer" && GPAIS vartotojo vardas. Jei nenurodytas parametras GPAIS_VART parametrų sąraše, tuomet naudojama init reikšmė 

m.loGPAIS.registro_kodas="GPAIS" && Dokumento registro kodas. Default "GPAIS"
m.loGPAIS.gpais_kiekio_apval=1 && && GPAIS kiekio apvalinimo požymis siunčiant į žurnalą. 1-aritmetiškai ROUND(1.5,0)=2, 2-į mažesnę pusę INT(1.5)=1, 3-į didesnę pusę CEILING(1.2)=2, 4 - neapvalinama, paliekama programoje paskaičiuota išraiška. Default 1-aritmetiškai.

m.loGPAIS.usad_kodas='03370260' && Parametras skirtas užstatinės taros administratoriaus kodui nurodyti. Pagal nutylejimą šio parametro reikšmė '303370260' (tokią nurodė GPAIS).

Sistemos INIT-as gali būti aprašytas konkrečiam vartotojui, vartotojų grupei arba visiems vartotojams.

Aprašius Sistemos INIT-ą būtina iš naujo paleisti programą!

Pirmą kartą paleidžiant programą su Sistemos INIT-e aprašytais GPAIS parametrais, susikuria:

  • lentelės GP01_KLASIF, GP02_PAK, GP03_MAT_PAK ir GP04_ISTOR,
  • parametrai GPAIS_OPENSS (GPAIS OpenSSL.exe katalogas) ir GPAIS_VART (GPAIS vartotojo id_rsa kelias ir vartotojo vardas),
  • meniu punktas GPAIS:

gpais_08

Parametrų GPAIS_OPENSS ir GPAIS_VART užpildymas

Servisas -> Administravimas -> Parametrai

GPAIS parametrai aprašomi Sistemos INIT-e. Tam tikri parametrai gali būti aprašyti ir parametrų sąraše.
Jeigu parametro reikšmė yra nurodyta parametrų sąraše, ji turi aukštesnį prioritetą nei reikšmė, nurodyta Sistemos INIT-e.

gpais_01

GPAIS asmeninio parašo gavimas iš GPAIS sistemos aprašytas čia.

gpais_02

Dokumentų registro, skirto suformuotų GPAIS duomenų saugojimui, sukūrimas

Servisas -> Dokumentų registras

Sukuriamas naujas įrašas. Užpildomi laukai "Kodas" ir "Dokumento Nr.".

Standartiškai siūlome kodo lauke įvesti reikšmę "GPAIS".

gpais_13

Įrašas išsaugomas.

Jo viduje užprogramuojamas klavišas registro laukų sukūrimui:

GPAIS("SUKURTI_LAUK",,thisform)

gpais_14

Paspaudus užprogramuotą klavišą susikuria registro laukai:

gpais_15a

gpais_16

Registras išsaugomas ir perkeliamas.

gpais_17

Skirtuko "Prekės GPAIS pakuotės" užprogramavimas

Servisas -> Kortelės -> Prekės -> Prekės koregavimas -> Matavimai -> Mato vieneto koregavimas

Prekės kortelės viduje matavimo vieneto koregavimo lange užprogramuojamas INIT-as:

GPAIS("GP03",,thisform)

gpais_11

Prekės matavimo vieneto koregavimo lange atsiranda skirtukas "Prekės GPAIS pakuotės", kuriame suvedami prekės mato vieneto pakuotės duomenys.

gpais_12

Pardavimo (pirkimo, atsargų, gamybos) operacijos

Jeigu GPAIS duomenys bus formuojami iš prekių pirkimo, atsargų arba gamybos operacijų, tai atitinkamų operacijų sąrašuose viskas aprašoma analogiškai kaip pardavimo operacijų sąraše.

Papildomo stulpelio sukūrimas operacijų sąraše.

Servisas -> Pardavimai -> Pardavimo operacijos

Užprogramuojamas arba papildomas metodas "Po nuskaitymo" :

GPAIS('PRIDETI_LAUK','',thisform)

gpais_04

Pardavimo operacijų sąraše matysis stulpelis "GPAIS Istorija"

gpais_05

Jis skirtas GPAIS istorijos informacijai. Stulpelyje parodoma ar dokumentas suformuotas į GPAIS istoriją.

Operacijų sąraše užprogramuojamas klavišas GPAIS istorijos formavimui

Servisas -> Pardavimai -> Pardavimo operacijos

GPAIS("FORMUOTI",,thisform,lcWhere,lcGavimas,lcVeikla,lcVeiklaWhere,lcTaraWhere,lcGavimasWhere)

Parametrai:

  • lcWhere - papildoma where sąlygą, pagal kurią atrenkame eilutes istorijos formavimui.
    Pirkimo ir pardavimo operacijose sąlygoje galima naudoti I27_FIFO, I07_PARD, N08_KLIJ, N17_PROD lentelių laukus.
    Atsargų nurašymo operacijose sąlygoje galima naudoti I27_FIFO, I12_IND, N08_KLIJ, N17_PROD lentelių laukus.
    Gamybos operacijose sąlygoje galima naudoti I27_FIFO, I16_KALD, N08_KLIJ, N17_PROD lentelių laukus.

  • lcGavimas - gavimo būdo klasifikatoriaus kodas iš klasifikatorių sąrašo.

  • lcVeikla - veiklos būdo klasifikatoriaus kodas iš klasifikatorių sąrašo.

  • lcVeiklaWhere - veiklos būdo parinkimas. Jei šis parametras neperduodamas, tada veiklos būdas priskiriamas pagal lcVeikla kodą.
    Į lcVeiklaWhere parametrą rašoma sql sąlyga (pvz., "case when n08_kodas_ls_2='UZSIENIS' then 'CL118:ET' else 'CL118:DP' end").
    Sąlygoje "case" galima naudoti tik N08_KLIJ lentelės laukus.
    Parametras neperduodamas atsargų ir gamybos operacijose.

  • lcTaraWhere - taros klasifikatoriaus parinkimas.
    Galima įrašyti arba loginę reikšmę (.T. arba .F.), arba sql sąlygą (pvz.: "case when n33_salies_k<>'LT' then 0 else 1 end"), kuri grąžina reikšmes 1 arba 0.
    Jei irašyta .T. arba sąl sąlyga grąžina reikšmę 1 - tada suprantama kaip užstatinė pakuotė, ir į GPAIS istoriją bus perduodamas tipas "Tara" ir barkodas iš lauko "Užstato barkodas (LT)",
    jei įrašyta .F. arba sql sąlyga grąžina reikšmę 0 - tada suprantama kaip standartinė pakuotė, ir į GPAIS istoriją bus perduodamas tipas "Pakuotės" ir klasifikatorius iš lauko "Užstato klasif. (Kita)".
    Sąlygoje "case" galima naudoti N08_KLIJ ir N33_KBAN lentelių laukus.

  • lcGavimasWhere - gavimo būdo parinkimas (ar prekė pagaminta, ar įvežta, ar gauta kitais būdais).
    Į lcGavimasWhere parametrą rašoma sql sąlyga (pvz., "case when n08_kodas_ks is null then 'CL140:2' else 'CL140:1' end").
    Pirkimo ir pardavimo operacijose sąlygoje galima naudoti I27_FIFO, I07_PARD, N08_KLIJ, N17_PROD lentelių laukus.
    Atsargų nurašymo operacijose sąlygoje galima naudoti I27_FIFO, I12_IND, N08_KLIJ, N17_PROD lentelių laukus.
    Gamybos operacijose sąlygoje galima naudoti I27_FIFO, I16_KALD, N08_KLIJ, N17_PROD lentelių laukus.

Pvz.:

GPAIS("FORMUOTI",,thisform,"isnull(n08_kodas_ls_1,'')='GPAIS'","CL140:1","CL118:DP")

Istorija bus formuojama tik toms prekėms, kurių tiekėjo kortelėje pirmas logistikos kodas yra GPAIS. Šiama pavyzdyje nurodytas veiklos būdas CL118:DP - "Didmeninė prekyba", gavimo būdas CL140:1 - "Importuota".

gpais_31

GPAIS("FORMUOTI",,thisform,"(n08_kodas_ks is null or n08_kodas_ls_1 = 'GPAIS' ) ","CL140:1","CL118:DP","case when n08_kodas_ls_2='UZSIENIS' then 'CL118:ET' else 'CL118:DP'  end","case when n33_salies_k<>'LT' then 0 else 1 end", "case when n08_kodas_ks is null then 'CL140:2' else 'CL140:1' end")

Šiuo atveju, jei pirkėjo logistikos kodas 2 yra 'UZSIENIS', tai veiklos būdas bus priskiriamas CL118:ET - "Išvežimas iš LR vidaus rinkos per trečiuosius asmenis", kitu atveju - CL118:DP - "Didmeninė prekyba".
Jeigu prekei priskirta pakuotė su tipu "Tara", o pirkėjo alternatyviuose adresuose nurodyta šalis LT , tai į istoriją bus perduodamas tipas "Tara" ir užstato barkodas, priešingu atveju bus perduodamas tipas "Pakuotė" su lauke "Užstato klasif. (Kita)" nurodytu klasifikatorium.
Jei klientas yra NULL, tai gavimo būdas yra CL140:2 - "Pagaminta ", kitu atveju CL140:1 - "Importuota (įvežta) ".

Operacijų sąraše užprogramuojamas klavišas GPAIS registro formavimui

Servisas -> Pardavimai -> Pardavimo operacijos

GPAIS("FORMUOTI_REG",,thisform)

gpais_07

Dokumentų registro analitinės operacijos

Dokumentų registro analitinėse operacijose užprogramuojamas klavišas prekinių vienetų/gaminių siuntimui

Servisas -> Dokumentų registras

Nuskaitomas dokumentų registras "GPAIS" ir, atsistojus ant jo, paspaudžiamas mygtukas "Analitinė operacija".

gpais_19

Dokumentų registras -> Dokumentų registro GPAIS koregavimas

Užprogramuojamas klavišas prekinių vienetų/ gaminių siuntimui į GPAIS:

GPAIS('PV_SIUNTIMAS','',thisform)

gpais_18

Prieš siunčiant žurnalus, būtina be klaidų nusiųsti prekinius vienetus/ gaminius. GPAIS sistemoje prie importavimo istorijos neturi būti klaidų.

Po išsiuntimo operacijos viduje, antrame registro lygyje užsideda požymis "Nusiųsta" = 1.
Požymis užsideda bet kokiu atveju, nepriklausomai ar gaminiai/pakuotės nusisiuntė gerai, ar su klaidomis.
Norint naujai nusiųsti gaminį/pakuotę, registro požymi reikia pakeisti į 0. Statuso "Nusiųsta" pakeitimas.

Dokumentų registro analitinėse operacijose užprogramuojamas klavišas žurnalo siuntimui

Servisas -> Dokumentų registras

Nuskaitomas dokumentų registras "GPAIS" ir, atsistojus ant jo, paspaudžiamas mygtukas "Analitinė operacija".

gpais_19

Dokumentų registras -> Dokumentų registro GPAIS koregavimas

Užprogramuojamas klavišas žurnalo siuntimui į GPAIS:

GPAIS('ZU_SIUNTIMAS','',thisform)

gpais_20

Prieš siunčiant žurnalus, būtina be klaidų nusiųsti prekinius vienetus/ gaminius. GPAIS sistemoje prie importavimo istorijos neturi būti klaidų.

GPAIS žurnalas siunčiamas už mėnesį.

Dokumentų registro analitinėse operacijose užprogramuojamas klavišas žurnalo šalinimui iš GPAIS

Servisas -> Dokumentų registras

Nuskaitomas dokumentų registras "GPAIS" ir, atsistojus ant jo, paspaudžiamas mygtukas "Analitinė operacija".

gpais_19

Dokumentų registras -> Dokumentų registro GPAIS koregavimas

Užprogramuojamas klavišas žurnalo šalinimui iš GPAIS:

GPAIS('ZU_SALINIMAS','',thisform)

gpais_21

Informacija išmetimui siunčiama už mėnesį.

Išmetimui siunčiamas įrašas turi būti dokumentų registre.
Išmetus žurnalą iš GPAIS, registre esantis įrašas automatiškai neišsimeta.
Norint suformuoti iš naujo, jį reikia iš registro išmesti.

Jei iš dokumentų registro išmetama operacija, jos nebus galima pašalinti iš GPAIS sistemos.
Todėl pirmiausia žurnalas išmetamas iš GPAIS sistemos, o po to iš registro.

Dokumentų registro analitinėse operacijose užprogramuojamas klavišas statuso "Nusiųsta" pakeitimui

Servisas -> Dokumentų registras

Nuskaitomas dokumentų registras "GPAIS" ir, atsistojus ant jo, paspaudžiamas mygtukas "Analitinė operacija".

gpais_19

Dokumentų registras -> Dokumentų registro GPAIS koregavimas

Užprogramuojamas klavišas statuso "Nusiųsta" pakeitimui iš 1 į 0 GPAIS žurnalo siuntimo klaidų faile išvardintiems prekiniams vienetams:

GPAIS('PV_STATUS_PAGAL_LOG','',thisform)

gpais_22

Atsistojus ant konkretaus mėnesio GPAIS duomenų ir paspaudus užprogramuotą klavišą, procedūra pakeičia įraše esančių prekių statusą "Nusiųsta" iš 1 į 0.
Pakeičiama tik tiems prekiniams vienetams, kurie išvardinti GPAIS žurnalo siuntimo klaidų faile 'PV_STATUS_PAGAL_LOG'.
Neradus logo faile išvardintų prekinių vienetų, pateikiamas klaidos pranešimas.

Procedūra siuntimo nevykdo. Pakeitus statusą, reikia vėl atlikti prekinių vienetų siuntimą.

Naudojama tuo atveju, kai prekinių vienetų siuntimas baigėsi sėkmingai, bet, siunčiant žurnalą, dėl tam tikrų priežasčių nerandami kai kurie prekiniai vienetai ir juos reikia užsiųsti pakartotinai.