Forum | | | | - Seite 1 - |
| Thomas Freier | Bevor ich das Rad neu erfinde, hat sich schon einer mit dem Thema befasst und es umgesetzt? Nachdem ich nach langem Zaudern, unser Kassierer ist als echter DAU einfach nicht mit einer ext. Software zurecht gekommen, 2010 DTAUS in meinem Vereinsprogramm eingebaut hatte steht nun SEPA an, und ist im Moment noch ein Buch mit sieben Siegeln für mich. Würde mich freuen, wenn jemand mit einem entsprechenden Script (*.inc) helfen könnte, um eine *.xml erzeugen zu können. Eine kleine Aufwandsentschädigung ist nicht ausgeschlossen, denn sonst ich würde es erneut mit einer ext. Software versuchen und der Kassierer muß eben tüchtig üben damit die Kasse nicht leer bleibt. |
| | | | |
| | | | - Seite 2 - |
| | Torben Nissen | Guten Morgen, ich habe schon erfolgreich SEPA-Dateien erstellt. Ich habe Anfangs die Umwandlung von Ansi -> UTF weggelassen, bekam dann aber immer die Info, dass die Datei nicht in Ordnung sei. Also habe ich diesen Punkt eingebaut und es funktioniert. Ich nutze im Moment (bisher ohne Probleme) einfach immer "Folgelastschrift". Man könnte dies natürlich in der Kunden- (bzw. Mandanten-) Verwaltung regeln, ob es sich um eine Erst- oder Folgelastschrift handelt.
Schönen Tag noch und viele Grüße Torben |
| | | | |
| | Thomas Freier | Moin Torben, wandels du die Datei um, oder nur die Elemente user_firma$ nachname$ vorname$ zweck$ um? Den Punk Erst- und Folgelastschrift kläre bei unserer Kasse, ob es wirklich zwei Dateien sein müssen, oder es nur um die Vorlaufzeiten geht. Die meisten Kassen bieten ja auch an eine Musterdatei vorab zu prüfen. |
| | | | |
| | Torben Nissen | Ich wandel die Elemente um. Wegen der Erst- bzw. Folgelastschrift gab es, wie gesagt, bisher keine Probleme. Das Ausführungsdatum darf nur nicht zu früh sein, dann gibt es im Onlinebanking-Programm Probleme. Vielleicht hast Du Recht und es geht tatsächlich bei der Erst- und Folgelastschrift um die Vorlaufzeit. |
| | | | |
| | Thomas Freier | Gerade von der S-Kasse die Auskunft bekommen, dass der Mandant bzw. dessen Bank die Lastschrift bei falscher Angabe ablehnen können. Muß aber nicht so sein. Bei den Beispieldateien wird es im Moment ja nicht bei jedem Datensatz hinterlegt. Werde es mit Sepasoft testen ob es auch anders werden kann. |
| | | | |
| | Torben Nissen | Ob die Bank überhaupt prüft, ob es eine Erst- oder Folgelastschrift ist? Es gibt ja auch die Möglichkeit "Letzte Lastschrift"! Ich muss mal sehen, ob ich doch noch einmal diesen Punkt in meinem Programm überarbeite. Ich bastel gerade sowieso an Version 4. Das Programm muss dann prüfen, ob es sich um einen Erstauftrag (erster Aboauftrag) und dann auch noch um die erste Rate handelt. Wenn nicht, ist es eine Folgerate. Ich hätte nur das Problem, dass ich nicht genau festlegen kann, ob es die letzte Lastschrift ist, da der Kunde sein Abo auch noch verlängern kann, wenn die letzte Rate vom letzten Auftrag schon abgebucht wurde. (Ist doch eigentlich egal! Warum nur wird diese Angabe benötigt? ) |
| | | | |
| | Thomas Freier | Reiner Formalismus für festgelegte Ratenzahlungszeiten. Im Prinzip muß man wohl nicht auf die Letztlastschrift eingehen. |
| | | | |
| | Thomas Freier | So, einmal Erst und Folge in Sepasoft gemischt. Es wurde die Liste vom Programm nach Lastschriftart vor dem Erstellen der xml neu sortiert. In der xml wurden zwei Abschnitte erzeugt. Ich werde es es im Programm so steuern, dass zwei getrennte Dateien (ERST, FOLGE) erzeugt werden. |
| | | | |
| | Torben Nissen | Das sieht doch prima aus! Der 01. Februar 2014 kann kommen !!! Ich werde es wohl auch mit zwei Sepa-Dateien regeln. Ist ja auch nicht schlimm.
Für alle anderen, die vielleicht auch noch irgendwann vor dem "SEPA-Problem" stehen, sei gesagt, dass es im Prinzip gar nicht so schwer ist, eine SEPA-Datei zu erstellen. Ich bin so vorgegangen, dass ich eine DTA-Datei mit dem Programm Sepatools in das XML-Format umgewandelt habe. So wusste ich, wie eine SEPA-XML-Datei aufgebaut ist und welche Daten (mindestens) gefordert sind. Dann bin ich Zeile für Zeile durchgegangen und habe jede Zeile entsprechend in mein Programm umgesetzt, so dass dieses wiederum eine XML-Datei erstellen kann.
Das Programm Sepatools gibt es hier: [...] Eine SEPA-Test-Datei hat Thomas im vorherigen Beitrag gepostet. |
| | | | |
| | Thomas Freier | Ja, ist doch einfacher, und vor allem nach deiner Vorarbeit und "Testphase", als ich befürchtet hatte. Wie es 2014 endgültig wird werden wir sehen, da dann ja auch BIC entfallen kann. Gelesen hatte ich noch, dass über jede Lastschrift ein Protokoll archiviert werden soll. Ich werde, da ohnehin angepasst werden muß, in meine Vorschau die ReferenzNr. gleich in einer Spalte erzeugen und alles als codierte csv abspeichern |
| | | | |
| | Torben Nissen | Zumindest muss ein Datenträgerbegleitzettel erstellt werden. (Nachtrag: Das Datum ist bei meinem Beispiel natürlich nicht korrekt! ) |
| | | | |
| | Thomas Freier | Ja??? Diese Funktion habe ich in der Testsoftware Sepasoft nicht gefunden, oder sollte es dieser Report sein? Bisher hatte ich da selbst eine einfache PDF(kommt ohne Zusatzsofware aus aber auf Basisfont beschränkt) erzeugt und beides ist dann per Email übermittelt worden. Beispiel einseitige PDF
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proc BEGLEITZETTEL_PDF
Assign #2,(old_file$+"\\DTAUS\\Begleitzettel.pdf")
Rewrite #2
Print #2,"%PDF-1.2"
Print #2,"%âãÏÓ"
Print #2,"1 0 obj"
Print #2,"<<"
Print #2,"/Author ()"
Print #2,"/CreationDate (D:20090105223536)"
Print #2,"/Creator (PDFproducer v1.3)"
Print #2,"/Producer (PDFproducer )"
Print #2,"/Title ()"
Print #2,"/Subject ()"
Print #2,"/Keywords ()"
Print #2,">>"
Print #2,"endobj"
Print #2,"4 0 obj"
Print #2,"<<"
Print #2,"/Type /Font"
Print #2,"/Subtype /Type1"
Print #2,"/Name /F1"
Print #2,"/Encoding 5 0 R"
Print #2,"/BaseFont /Courier"
Print #2,">>"
Print #2,"endobj"
Print #2,"5 0 obj"
Print #2,"<<"
Print #2,"/Type /Encoding"
Print #2,"/BaseEncoding /WinAnsiEncoding"
Print #2,">>"
Print #2,"endobj"
Print #2,"6 0 obj"
Print #2,"<<"
Print #2," /Font << /F1 4 0 R >>"
Print #2," /ProcSet [ /PDF /Text ]"
Print #2,">>"
Print #2,"endobj"
Print #2,"7 0 obj"
Print #2,"<<"
Print #2,"/Type /Page"
Print #2,"/Parent 3 0 R"
Print #2,"/Resources 6 0 R"
Print #2,"/Contents 8 0 R"
Print #2,"/Rotate 0"
Print #2,">>"
Print #2,"endobj"
Print #2,"8 0 obj"
Print #2,"<<"
Print #2,"/Length 6 0 R"
Print #2,">>"
Print #2,"stream"
Print #2,"BT"
Print #2,"/F1 12 Tf"
Print #2,"1 0 0 1 70 782 Tm"
Print #2,"14 TL"
var a$=" "
var text$="Begleitzettel"
text$=" "
PDF_ZEILE 5
text$="Begleitzettel Datenträgeraustausch"
PDF_ZEILE 1
text$="Sammel-Einziehungsauftrag"
PDF_ZEILE 1
text$="----------------------------------------"
PDF_ZEILE 1
text$=""
PDF_ZEILE 2
text$=left$("Disketten-Nr."+a$,40)+": ............."
PDF_ZEILE 1
text$=left$("Dateiname"+a$,40)+": DTAUS0.txt"
PDF_ZEILE 1
text$=left$("Erstellungsdatum"+a$,40)+": "+Date$(0)
PDF_ZEILE
text$=""
PDF_ZEILE 1
text$=left$("Anzahl Datensätze C"+a$,40)+": "+@Format$("#######0",ANZ.sum!)
PDF_ZEILE 1
text$=left$("Kontrollsumme der Datensätze C "+a$,36)+"EUR : "+@Format$("##########0.00",EUR.sum!)
PDF_ZEILE 1
text$=""
PDF_ZEILE 1
text$=left$("Kontrollsumme der Bankleitzahlen"+a$,40)+": "+@Format$("00000000000000000",BLZ.sum!)
PDF_ZEILE 1
text$=left$("Kontrollsumme der Kontonummern"+a$,40)+": "+@Format$("00000000000000000",KTO.sum!)
PDF_ZEILE 1
text$="----------------------------------------"
PDF_ZEILE 1
text$=" "
PDF_ZEILE 2
text$=left$("Bankleitzahl Absenderbank"+a$,40)+": "+GetText$(B_Edi6&)
PDF_ZEILE 1
text$=left$("Kontonummer Absender"+a$,40)+": "+GetText$(B_Edi61&)
PDF_ZEILE 1
text$=left$("Absender"+a$,40)+": "+GetText$(B_Edi5&)
PDF_ZEILE 1
text$=" "
PDF_ZEILE 7
text$="------------------------------------------------------------------"
PDF_ZEILE 1
text$="Ort, Datum Unterschrift"
PDF_ZEILE 1
Print #2,"1 0 0 1 504 25 Tm"
Print #2,"(1) Tj"
Print #2,"/F1 10 Tf"
Print #2,"ET"
Print #2,"endstream"
Print #2,"endobj"
Print #2,"9 0 obj"
Print #2,"2360"
Print #2,"endobj"
Print #2,"2 0 obj"
Print #2,"<<"
Print #2,"/Type /Catalog"
Print #2,"/Pages 3 0 R"
Print #2,">>"
Print #2,"endobj"
Print #2,"3 0 obj"
Print #2,"<<"
Print #2,"/Type /Pages"
Print #2,"/Count 1"
Print #2,"/MediaBox [ 0 0 595 842 ]"
Print #2,"/Kids [ 7 0 R ]"
Print #2,">>"
Print #2,"endobj"
Print #2,"0 10"
Print #2,"0000000000 65535 f"
Print #2,"0000000113 00000 n"
Print #2,"0000002875 00000 n"
Print #2,"0000002918 00000 n"
Print #2,"0000000156 00000 n"
Print #2,"0000000245 00000 n"
Print #2,"0000000307 00000 n"
Print #2,"0000000372 00000 n"
Print #2,"0000000453 00000 n"
Print #2,"0000002858 00000 n"
Print #2,"trailer"
Print #2,"<<"
Print #2,"/Size 10"
Print #2,"/Root 2 0 R"
Print #2,"/Info 1 0 R"
Print #2,">>"
Print #2,"startxref"
Print #2,"2996"
Print #2,"%%EOF"
Close #2
Endproc
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proc PDF_ZEILE
Parameters n.p%
text$=Translate$(Text$,"(","\(")
text$=Translate$(Text$,")","\)")
text$="T* (" + text$ + ") Tj"
WhileLoop n.p%
Print #2,text$
EndWhile
EndProc
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nachtrag: wars schneller. Vielleicht zur eigenen Information kann man ja Sammel-Ersteinzugsauftrag bzw. Sammel-Folgeeinzugsauftrag verwenden. |
| | | | |
| | Torben Nissen | Ich habe noch einmal wegen des Datenträgerbegleitzettels nachgeforscht. Ich kenne ihn schon von der DTA-Datei. Da muss auch so ein Zettel ausgedruckt werden. Bisher haben wir diesen Zettel aber keiner Bank vorlegen müssen. Das liegt vielleicht aber auch daran, dass wir in der Firma die Datei in unser Online-Bankingprogramm "SFirm" einlesen und nicht zur Bank bringen. Dieses gibt dann nach Absenden der Lastschriften ein detailliertes Protokoll aus. Den Datenträgerbegleitzettel heften wir dann zusammen mit dem Protokoll ab. Den Datenträgerbegleitzettel drucke ich über meinen Abomanager aus, könnte man aber auch von "SFirm" ausdrucken lassen.
StartPrint "*"
If %Printing
Usefont "Arial",28,0,1,0,0
Drawtext 30,30,"Datenträger-Begleitzettel"
Usefont "Arial",20,0,0,0,0
DrawText 30,60,"Belegloser Datenträgeraustausch für Euro-Zahlungen (SEPA) im XML-Format"
DrawText 30,90,"Sammel-Einzugsauftrag"
Usefont "Arial",18,0,0,0,0
DrawText 30,130,"Erstellungsdatum:"
DrawText 30,150,"Ausführungsdatum:"
DrawText 30,170,"Anzahl der Datensätze:"
DrawText 30,190,"Summe der Beträge in EUR:"
DrawText 30,210,"Name Auftraggeber:"
DrawText 30,230,"Dateikennung:"
DrawText 30,250,"Dateiname:"
DrawText 300,130,@Date$(0)
DrawText 300,150,printausfuehrung$
DrawText 300,170,anzahl$
printergebnis$=@Translate$(printergebnis$,".",",")
DrawText 300,190,printergebnis$
DrawText 300,210,user_firma$
DrawText 300,230,"Kennung-Msg"+Date$(3)+"-"+time_kennung$
DrawText 300,250,"Abo_"+datum$+".xml"
DrawText 30,350,"_____________________________________________________"
Usefont "Arial",8,0,0,0,0
DrawText 30,370,"Ort, Datum, Unterschrift"
EndIf
EndPrint
Sepatools fragt tatsächlich, ob ein Datenträgerbegleitzettel ausgedruckt werden soll.
|
| | | | |
|
AntwortenThemenoptionen | 27.224 Betrachtungen |
ThemeninformationenDieses Thema hat 3 Teilnehmer: |