REM  *****  BASIC  *****
sub export
dim document, dokument, list, dispatcher, bunka_zaznam,databaza ,bunka_cislo as object
dim hore(1) as new com.sun.star.beans.PropertyValue
hore(0).Name = "By"
hore(0).Value = 1
hore(1).Name = "Sel"
hore(1).Value = false

dim vlavo(1) as new com.sun.star.beans.PropertyValue
vlavo(0).Name = "By"
vlavo(0).Value = 13
vlavo(1).Name = "Sel"
vlavo(1).Value = false

dim cislo,zaznam  as string
dokument   =stardesktop.currentcomponent
document   = ThisComponent.CurrentController.Frame          
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
list       =dokument.sheets(0)
bunka_zaznam=list.GetCellByPosition(0,23)
zaznam     =trim(bunka_zaznam.string)
bunka_cislo=list.GetCellByPosition(1,22)
cislo       =trim(bunka_cislo.string)
'////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
gosub kopiruj
	if zaznam="1" then'starý odberateľ
		ovladanie.najdi_2(cislo,"odberatelia")
		gosub najdi
		gosub exportuj_odberatela
	elseif zaznam="2" then 'nový odberateľ
		ovladanie.vyberlb("odberatelia","A10000")
		gosub vloz
		gosub exportuj_odberatela
	elseif zaznam="3" then'starý dodávateľ
		ovladanie.najdi_2(cislo,"dodavatelia")
		gosub najdi
	elseif zaznam="4" then'nový dodávateľ
		ovladanie.vyberlb("dodavatelia","A10000")
		gosub vloz
	endif
dokument.Store("",Array())    'ulozit(dokument)
dokument.Close(true)          'zavrieť(dokument)
exit sub

kopiruj:
with ovladanie
	.vyberlb("vklad","A2:N2")
	.zkopiruj
	.vymaz("vklad","B10:B22")
	.vyberlb("","A2")
end with
return

najdi:
dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, vlavo())'skok vľavo o 1 bunku
ovladanie.vloz
ovladanie.vyberlb("vklad") 
return

vloz:
dispatcher.executeDispatch(document, ".uno:GoUpToStartOfData", "", 0, hore())
dispatcher.executeDispatch(document, ".uno:JumpToNextCell", "", 0, Array()
ovladanie.vloz
'ovladanie.vyberlb("","A2")
ovladanie.zorad
return

exportuj_odberatela:
with ovladanie
	.vyberlb("odberatelia","A2:G500")
	.zkopiruj
	.vyberlb("vklad")
'faktúra	
	.otvor("C:\firma\šablony\faktúra.ots")
	.vyberlb("odberatel","A2")
	.vloz
	'.vyberlb("","A2")
	.zorad
	.vyberlb("faktúra")
	.uloz_zosit("C:\firma\šablony\faktúra.ots") 
'objednávka	
	.otvor("C:\firma\šablony\objednávka.ots")
	.vyberlb("odberatel","A2")
	.vloz
	'.vyberlb("","A2")
	.zorad
	.vyberlb("objednávka")
	.uloz_zosit("C:\firma\šablony\objednávka.ots") 
end with
'msgbox("Všetky údaje boli uložené do databázy",0,"Databáza")'hláška
return
end sub

sub novy_odberatel
dim dokument,list,bunka_nazov,bunka_vklad,oDoc as object
dim nazov,zaznam,vklad as string
dim cislo,tlacidlo as integer
ovladanie.otvor("C:\firma\databázy\kontakty.ods")
oDoc=stardesktop.currentcomponent
oDoc.close(true)
ovladanie.vymaz("vklad","B27")
dokument   =thiscomponent        
list       =dokument.sheets(0)
cislo=9
	do while cislo<22
	bunka_nazov=list.GetCellByPosition(0,cislo)'prvý stĺpec +riadok
	nazov=trim(bunka_nazov.string)
	bunka_vklad=list.GetCellByPosition(1,cislo)'druhý stĺpec +riadok
skok:
	vklad= inputbox("Zadajte údaj "+nazov+" :","Vloženie kontaktu","")
		if vklad="" then
		tlacidlo=msgbox("Nevložili ste žiadny údaj vrátiť sa?",35,"vklad")'hláška
			if tlacidlo=6 then
			goto skok
			elseif tlacidlo=7 then 
			goto skok1		
			else  msgbox("zastaví",0,"vklad")'hláška
			stop
			endif
		else
		endif
	msgbox("vložený údaj je "+vklad+"",0,"vklad")'hláška
skok1:	
	select case cislo
	case 9 to 12,14,16 to 21
    bunka_vklad.string=vklad
	case 13,15
	bunka_vklad.value=vklad
	end select
	cislo=cislo+1
	'msgbox("Ďalšie číslo riadku bude "+cislo+"",0,"slučka")'hláška
	loop
export	
end sub



