PRIVATE m.hladajoperace, m.hladajcstredisk, m.hladajcpartner, m.cdata, m.hladajidlist, m.menobuffera, m.hladajpz1, m.hladajpz2
PRIVATE m.aktmena
DO nastavsety
DO clos_data
DO open_database
chyba_pri_otevirani = .f.
m.aktmena=m.giakt_mena
TRY
	IF m.issql
		otevira_se = "ps_rdokladynaediexport"
		rv("dokladynaediexport","zoznam")
	ELSE
    	otevira_se = m.fn_doklady
		USE (m.fn_doklady)     ALIAS doklady     IN 0 
    	otevira_se = m.fn_partneri
		USE (m.fn_partneri)     ALIAS partneri     IN 0 
		otevira_se = "vdokladynaediexport"
		USE vdokladynaediexport ALIAS zoznam IN 0
	ENDIF
CATCH
	chyba_pri_otevirani = .T.
ENDTRY
IF chyba_pri_otevirani
	=MESSAGEBOX(jaz("prg_dbf_neprist_skuste_pozdeji")+CHR(13)+m.otevira_se,64,"FoodMan",2)
	DO zurnal_log WITH "OPERA", "Export EDI dokladov", jaz("nejde_otevrit") + m.otevira_se
	RETURN
ENDIF
SELECT zoznam
SCAN ALL 
	IF INLIST(operace,"VE","VR")
		DO CASE
			CASE zoznam.uctsuma=-11 OR zoznam.uctsuma=-10 && bola uz faktura a doklad bol opraveny
				IF "dodak"$LOWER(zoznam.funkcie)
					DO gener_edi_dodak WITH zoznam.c_dokl, zoznam.typ_obj, .t.
				ENDIF 
				SELECT zoznam
				REPLACE uctsuma WITH 1 IN zoznam
				DO gener_edi_fakturu WITH zoznam.c_dokl, zoznam.typ_obj, .f., .t.
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+10 IN zoznam
			CASE zoznam.uctsuma=-1 &&dodak uz bol a doklad bol opraveny
				IF "dodak"$LOWER(zoznam.funkcie)
					DO gener_edi_dodak WITH zoznam.c_dokl, zoznam.typ_obj, .t.
				ENDIF 
				SELECT zoznam
				REPLACE uctsuma WITH 1 IN zoznam
				DO gener_edi_fakturu WITH zoznam.c_dokl, zoznam.typ_obj
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+10 IN zoznam
			CASE zoznam.uctsuma=0 && nebol ani dodak ani faktura
				IF "dodak"$LOWER(zoznam.funkcie)
					DO gener_edi_dodak WITH zoznam.c_dokl, zoznam.typ_obj
				ENDIF 
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+1 IN zoznam
				DO gener_edi_fakturu WITH zoznam.c_dokl, zoznam.typ_obj
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+10 IN zoznam
			CASE zoznam.uctsuma=1 &&bol dodak
				DO gener_edi_fakturu WITH zoznam.c_dokl, zoznam.typ_obj
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+10 IN zoznam
			CASE zoznam.uctsuma=10 &&bola faktura
				IF "dodak"$LOWER(zoznam.funkcie)
					DO gener_edi_dodak WITH zoznam.c_dokl, zoznam.typ_obj
				ENDIF 
				SELECT zoznam
				REPLACE uctsuma WITH uctsuma+1 IN zoznam
		ENDCASE 
	ELSE 
		DO gener_edi_fakturu WITH zoznam.c_dokl, zoznam.typ_obj, .t.
		SELECT zoznam
		REPLACE uctsuma WITH uctsuma+10 IN zoznam
	ENDIF 
ENDSCAN
=tux(.t.,.t.,"zoznam")
CLOSE DATABASES
CLOSE DATABASES
RETURN 
