Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: dSUG - Forum der deutschsprachigen Servoy User Group. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

Mike

Anfänger

  • »Mike« ist der Autor dieses Themas

Beiträge: 16

Wohnort: Neutraubling (Deutschland)

  • Private Nachricht senden

1

Dienstag, 9. August 2011, 15:07

Excel Export

Irgendwie bin ich nicht so recht erfolgreich in Servoy. Was ich auch anpacke muss ich in den Foren erfragen...

Hallo zusammen.

Heute geht's um den Export von Teilen eines Foundsets nach Excel. Habe mich durch das Wiki und das Forum gewühlt und bin soweit nun gekommen:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function Export(event) { 
var fs, dp, file, data, mimeType, ret; 

fs = forms.frm_kunden.foundset; 
dp = ["kontakt","itemkzbez"]; 
file = plugins.file.showFileSaveDialog("ServoyExport.xls"); 
mimeType = "application/vnd.ms-excel"; 
if (! file){ 
return; 
} 

data = plugins.excelxport.excelExport(fs, dp); 
ret = plugins.file.writeFile(file, data, mimeType); 
application.output(ret) 
}

Leider ist hier dann aber Schluss und ich hab schon so einiges probiert, aber wirklich weiter bin ich nicht gekommen. Hat jemand mal wieder Tipps für mich??

DANKE schon vorab!
There are only 10 types of people in the world, those who understand binary and those who don't...

ghouben

Profi

Beiträge: 169

Wohnort: Grüningen/Zürich, Schweiz

  • Private Nachricht senden

2

Mittwoch, 10. August 2011, 07:54

Irgendwie bin ich nicht so recht erfolgreich in Servoy. Was ich auch anpacke muss ich in den Foren erfragen...

Hallo zusammen.

Heute geht's um den Export von Teilen eines Foundsets nach Excel. Habe mich durch das Wiki und das Forum gewühlt und bin soweit nun gekommen:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function Export(event) { 
var fs, dp, file, data, mimeType, ret; 

fs = forms.frm_kunden.foundset; 
dp = ["kontakt","itemkzbez"]; 
file = plugins.file.showFileSaveDialog("ServoyExport.xls"); 
mimeType = "application/vnd.ms-excel"; 
if (! file){ 
return; 
} 

data = plugins.excelxport.excelExport(fs, dp); 
ret = plugins.file.writeFile(file, data, mimeType); 
application.output(ret) 
}

Leider ist hier dann aber Schluss und ich hab schon so einiges probiert, aber wirklich weiter bin ich nicht gekommen. Hat jemand mal wieder Tipps für mich??

DANKE schon vorab!
Hallo Mike,

Du hast mehrere Möglichkeiten. Basiert auf POI Library ist Standard in Servoy.

Servoy 6

Quellcode

1
//Export to Excel data//export in new byte arrayvar bytes = plugins.excelxport.excelExport(forms.form1.foundset, ['id', 'name']);//export by adding to templateXLS in default (new) 'Servoy Data' worksheetvar bytes = plugins.excelxport.excelExport(forms.form1.foundset, ['id', 'name'], templateXLS);//export by adding to templateXLS, in 'mySheet' worksheet, starting at default(1/1) row/columnvar bytes = plugins.excelxport.excelExport(forms.form1.foundset, ['id', 'name'], templateXLS, 'mySheet');//export by adding to templateXLS, in 'mySheet' worksheet, starting at 3rd row and 5th columnvar bytes = plugins.excelxport.excelExport(forms.form1.foundset, ['id', 'name'], templateXLS, 'mySheet', 3, 5);



Servoy 5

Quellcode

1
2
3
4
5
6
7
8
9
var wb = new Packages.org.apache.poi.hssf.usermodel.HSSFWorkbook();
var sheet1 = wb.createSheet("new sheet");
var sheet2 = wb.createSheet("second sheet");
var row = sheet1.createRow(0);
var cell = row.createCell(0);
cell.setCellValue(1);
var fileOut = new Packages.java.io.FileOutputStream("workbook.xls");
wb.write(fileOut);
fileOut.close()



Oder über ein externer Plugin von IT2BE (basiert auf eine andere Library mit ausführlichere Möglichkeiten. Weiss nicht mehr welche Library)

http://servoycomponents.com/plugins/data.php

Oder JasperReport, mit direktem Excel Export


Weiterhin ist Excel Export in unserem Navigation Framework eingebaut und wir von alle Forms vererbt.

Gruss
Geert

Mike

Anfänger

  • »Mike« ist der Autor dieses Themas

Beiträge: 16

Wohnort: Neutraubling (Deutschland)

  • Private Nachricht senden

3

Mittwoch, 10. August 2011, 09:28

Hallo Geert,

wie du gesehen hast, hab ich mich ja schon vorab für die Variante von Servoy 6 entschieden gehabt und auch verwendet:

Quellcode

1
2
3
4
5
fs = forms.frm_kunden.foundset; 
dp = ["kontakt","itemkzbez"]; 
file = plugins.file.showFileSaveDialog("ServoyExport.xls"); 

bytes = plugins.excelxport.excelExport(fs, dp); 


Mein Problem ist nun... ?(
- Wie bekomm ich die "bytes" in meine gewünschte Zieldatei "file"?
- Wie erzeuge ich dann das Excel-File im gewünschten Ordner?

Daran hänge ich momentan! :cursing:

DANKE Michael
There are only 10 types of people in the world, those who understand binary and those who don't...

ghouben

Profi

Beiträge: 169

Wohnort: Grüningen/Zürich, Schweiz

  • Private Nachricht senden

4

Freitag, 12. August 2011, 11:09

Hallo Geert,

wie du gesehen hast, hab ich mich ja schon vorab für die Variante von Servoy 6 entschieden gehabt und auch verwendet:

Quellcode

1
2
3
4
5
fs = forms.frm_kunden.foundset; 
dp = ["kontakt","itemkzbez"]; 
file = plugins.file.showFileSaveDialog("ServoyExport.xls"); 

bytes = plugins.excelxport.excelExport(fs, dp); 


Mein Problem ist nun... ?(
- Wie bekomm ich die "bytes" in meine gewünschte Zieldatei "file"?
- Wie erzeuge ich dann das Excel-File im gewünschten Ordner?

Daran hänge ich momentan! :cursing:

DANKE Michael
Hallo Mike,

Versuch es mal mit diesem Code

Quellcode

1
2
3
var fs = forms.frm_kunden.foundset; var dp = ["kontakt", "itemkzbez"];var bytes = plugins.excelxport.excelExport(fs, dp);
var file = "ServoyExport.xls";if (application.getApplicationType() == APPLICATION_TYPES.SMART_CLIENT) { file = plugins.file.showFileSaveDialog("C:/" + file);}
plugins.file.writeFile(file, bytes);



Gruss
Geert

Mike

Anfänger

  • »Mike« ist der Autor dieses Themas

Beiträge: 16

Wohnort: Neutraubling (Deutschland)

  • Private Nachricht senden

5

Donnerstag, 1. September 2011, 13:34

Hallo Geert!

Bin grad diese Woche erst aus dem Urlaub zurück! Daher meine späte Antwort!

Dein CODE funktioniert! DANKE!

MIKE
There are only 10 types of people in the world, those who understand binary and those who don't...

Ähnliche Themen

Social Bookmarks

Thema bewerten