deutsches Forum rund um Apache OpenOffice und LibreOffice
Zum Inhalt
von Domenico » So, 17.04.2016 11:46
von mikeleb » Sa, 16.04.2016 20:58
von Domenico » Sa, 16.04.2016 19:52
von Domenico » Sa, 16.04.2016 17:24
Code: Alles auswählen
DIM Preis as Double
aPreis = format(Preis(a)/ 119 * 100,"0.00")
von Domenico » Sa, 16.04.2016 17:08
Preis = wert3.StringItemList(wert3.SelectedItems(a)) aPreis = Preis(a)/ 119 * 100 'berechnet netto aus brutto
Sub Varianten oDoc = thisComponent.sheets("Eingabe") oForm = oDoc.DrawPage.Forms.GetByName("Dateneingabe") Wert1 = oForm.GetByName("Breiten") Wert2 = oForm.GetByName("Farben") Wert3 = oForm.GetByName("Preis") id = oForm.GetByName("id") Nr = id.text sku = oForm.GetByName("sku") Ref = sku.text Attr = "Breite:select:0, Farbe:select:1" Menge = 100 mMenge = 1 'k = ermittelt die Anzahl der Kombinationen k = (UBound(Wert1.SelectedItems())+1)*(ubound(Wert2.selecteditems())+1) for n = 1 to k Bild = b + 1 Breite = wert1.StringItemList(wert1.SelectedItems(a)) Farbe = wert2.StringItemList(wert2.SelectedItems(b)) Preis = wert3.StringItemList(wert3.SelectedItems(a)) aPreis = Preis(a)/ 119 * 100 'berechnet netto aus brutto Reference = Ref + "-" + format(art + 1, "000") Value = "Breite " + Breite(a)+":0, "+ Farbe(b) + ":1" 'Es werden Werte für den Prestasho Import generiert thisComponent.sheets(1).getcellbyposition(1,n).setstring(Attr()) thisComponent.sheets(1).getcellbyposition(2,n).setstring(Value()) thisComponent.sheets(1).getcellbyposition(0,n).setstring(Nr(n)) thisComponent.sheets(1).getcellbyposition(4,n).setstring(Reference()) thisComponent.sheets(1).getcellbyposition(8,n).setstring(aPreis()) thisComponent.sheets(1).getcellbyposition(10,n).setstring(Menge()) thisComponent.sheets(1).getcellbyposition(11,n).setstring(mMenge()) thisComponent.sheets(1).getcellbyposition(15,n).setstring(Bild()) b = b + 1 art = art + 1 if b > ubound(Wert2.selecteditems()) then : a = a + 1 : b = 0 : end if next n End Sub
von mikeleb » Fr, 15.04.2016 16:40
Aber wie kann ich denn diese Werte anstelle der bisher genutzten Array verwenden?
oDoc = thisComponent.sheets("Eingabe") oForm = oDoc.DrawPage.Forms.GetByName("Dateneingabe") Breite = oForm.GetByName("Breiten") cnt = UBound(Breite.SelectedItems) aBreiten=DimArray(cnt) for i=0 to cnt aBreiten(i)=Breite.StringItemlist(Breite.SelectedItems(i)) next
von Domenico » Do, 14.04.2016 16:56
oDoc = thisComponent.sheets("Eingabe") oForm = oDoc.DrawPage.Forms.GetByName("Dateneingabe") Breite = oForm.GetByName("Breiten") cnt = UBound(Breite.SelectedItems) Items = UBound(Breite.StringItemList) MsgBox Breite.StringItemList(3)
Breite = array("25 cm","30 cm","40 cm","50 cm","60 cm","70 cm","80 cm","100 cm")
von mikeleb » Mi, 13.04.2016 17:11
oList1 = oForm.GetByName("Breite").SelectedItems
oList1 = oForm.GetByName("Breite").getItemText(Nummer des Eintrages)
von Domenico » Mi, 13.04.2016 11:31
von mikeleb » Di, 12.04.2016 21:58
oList1 = oForm.GetByName("Breite")
oList1 = oForm.GetByName("Breite").getSelectedItems()
von Domenico » Di, 12.04.2016 20:48
Sub Varianten DIM oDoc as Object DIM oForm as Object DIM oList1 as Object DIM DrawPage as Object oDoc = thisComponent.Sheets(0) 'hier befindet sich das Listenfeld "Breite" oForm = oDoc.DrawPage.Forms.GetByName("Werte") 'hier das Formular "Werte" oList1 = oForm.GetByName("Breite") oList1 = Split(sInput,";") ''trennen der Werte Breite = oList1 msgBox Breite
von Domenico » So, 10.04.2016 22:28
thisComponent.sheets(1).getcellbyposition(1,n).setstring(Attr(b)) 'enthält einen String, welcher die Varianten Breite und Farbe an Stelle 0 und 1 für die Auswahl im Shop plaziert thisComponent.sheets(1).getcellbyposition(2,n).setstring(Value(a)) 'hier wird der Wert Value (bestehend aus Breite, Farbe und Position für die Darstellung im Shop ermittelt thisComponent.sheets(1).getcellbyposition(0,n).setstring(id(n)) 'id ist der Schlüssel des Vater-Artikels, zu welchem die Varkombis zugeordnet werden. thisComponent.sheets(1).getcellbyposition(4,n).setstring(Reference(n)) 'Generiert die Artikelnummern mit dreistelliger, aufsteigender Endnummer thisComponent.sheets(1).getcellbyposition(8,n).setstring(aPreis(a)) 'Generiert den Aufpreis für die verschiedenen Breiten, welcher auf den Artikelpreis des Vaters aufgerechnet wird thisComponent.sheets(1).getcellbyposition(10,n).setstring(Menge()) thisComponent.sheets(1).getcellbyposition(11,n).setstring(mMenge()) 'Hier werden Lagerbestand und Mindestabnahme gesetzt thisComponent.sheets(1).getcellbyposition(15,n).setstring(Bild(b)) 'Hier wird die Stelle des aufzurufendes Bildes ermittelt, welche zur Farbe passt
von mikeleb » So, 10.04.2016 21:22
von mikeleb » So, 10.04.2016 20:29
thisComponent.sheets(1).getcellbyposition(1,n).setstring(Attr(b)) thisComponent.sheets(1).getcellbyposition(2,n).setstring(Value(a)) thisComponent.sheets(1).getcellbyposition(0,n).setstring(id(n)) thisComponent.sheets(1).getcellbyposition(4,n).setstring(Reference(n)) thisComponent.sheets(1).getcellbyposition(8,n).setstring(aPreis(a)) thisComponent.sheets(1).getcellbyposition(10,n).setstring(Menge()) thisComponent.sheets(1).getcellbyposition(11,n).setstring(mMenge()) thisComponent.sheets(1).getcellbyposition(15,n).setstring(Bild(b))
von mikeleb » So, 10.04.2016 20:19
man bei bestimmten Artikeln eben nur eine gewisse Anzahlt an Größen und Farben bereit stellt
Ohne Makro geht da nichts.
Nach oben