Έλεγχος εκτέλεσης κώδικα SBSL

49 views
Skip to first unread message

Ioannis Gkouziotis

unread,
May 8, 2026, 6:40:27 AM (9 days ago) May 8
to Softone Developers Network
Παραθέτω ένα κομμάτι απο κώδικα SBSL το οποίο δεν είναι κάτι ιδιαίτερο. Παίρνει κάποιες εγγραφές απο τον FINDOC, και αναλόγως εκτυπώνει μια φόρμα και αποθηκεύει το αρχείο σε ένα path. Στο τέλος, ενημερώνει ενα custom πεδίο στον FINDOC για να ξέρουμε αν τελικά αποθηκεύτηκε. 

Ο κώδικας, ότι και να γίνει το πεδίο CCCESAVED θα το κάνει = 1 ότι και να γίνει με το αρχείο. Αν το path είναι λάθος ή δεν υπάρχει ή οτιδήποτε και να γίνει ο συγκεκριμένος κώδικας δεν το ξέρει. Υπάρχει τρόπος να πιάσουμε το αν τελικά το αρχείο αποθηκεύτηκε με κάποιο τρόπο;

fetch sDoc {
vRow = vRow + 1;

currFincode = 'Δημιουργία eINVOICE απο παραστατικό: ' + sDoc.FINCODE;
UserResp = SendResponse(vRow, currFincode, 'RESULTS.CURREC;RESULTS.LABELTEXT');

vFile2 = 'C:\\Users\\Admin\\' + VarToStr(sDoc.FISCPRD) + '\\' + VarToStr(sDoc.MTH) + '\\' + VarToStr(sDoc.FILENAME) + '.pdf';

if(sDoc.TFPRMS = 131) {
vModule = CallPublished('ModuleIntf.CreateModule', 'RETAILDOC,WARNINGS:OFF');
x = CallPublished('ModuleIntf.LocateModule',VarArray(vModule, sDoc.FINDOC, 2));

x = CallPublished('SysRequest.PrintForm', VarArray(vModule, 2200, VarToStr(:ImpTable.vPrinter), vFile2, 4));
} else {
vModule = CallPublished('ModuleIntf.CreateModule', 'SALDOC,WARNINGS:OFF');
x = CallPublished('ModuleIntf.LocateModule',VarArray(vModule, sDoc.FINDOC, 2));

if(sDoc.COUNTRY = 1000) {
x = CallPublished('SysRequest.PrintForm', VarArray(vModule, 9300, VarToStr(:ImpTable.vPrinter), vFile2, 4));
} else {
x = CallPublished('SysRequest.PrintForm', VarArray(vModule, 9301, VarToStr(:ImpTable.vPrinter), vFile2, 4));
}
}

if(/*Κάποια συνθήκη που δηλώνει οτι αποθηκεύτηκε*/) {
x = SafeExecSQL('SoftoneConn', 'UPDATE FINDOC SET CCCESAVED = 1 WHERE FINDOC = ' + VarToStr(sDoc.FINDOC), Null);
}}Str(:ImpTable.vPrinter), vFile2, 4));
} else {
vModule = CallPublished('ModuleIntf.CreateModule', 'SALDOC,WARNINGS:OFF');
x = CallPublished('ModuleIntf.LocateModule',VarArray(vModule, sDoc.FINDOC, 2));

if(sDoc.COUNTRY = 1000) {
x = CallPublished('SysRequest.PrintForm', VarArray(vModule, 9300, VarToStr(:ImpTable.vPrinter), vFile2, 4));
} else {
x = CallPublished('SysRequest.PrintForm', VarArray(vModule, 9301, VarToStr(:ImpTable.vPrinter), vFile2, 4));
}
}
                
x = SafeExecSQL('SoftoneConn', 'UPDATE FINDOC SET CCCESAVED = 1 WHERE FINDOC = ' + VarToStr(sDoc.FINDOC), Null);
}

Sotirios Milios

unread,
May 8, 2026, 7:05:45 AM (9 days ago) May 8
to so...@googlegroups.com

Για δοκιμαστε.

if (FileExists(VarToStr(:ImpTable.vFile2))='True')

Σωτήρης

--
Softone Developers Network group.
To post to this group, send email to so...@googlegroups.com
---
Λάβατε αυτό το μήνυμα επειδή έχετε εγγραφεί στην ομάδα "Softone Developers Network" των Ομάδων Google.
Για να απεγγραφείτε απ' αυτή την ομάδα και να σταματήσετε να λαμβάνετε μηνύματα ηλεκτρονικού ταχυδρομείου απ' αυτή, στείλτε ένα μήνυμα ηλεκτρονικού ταχυδρομείου στη διεύθυνση soft1+un...@googlegroups.com.
Για να δείτε αυτή τη συζήτηση, επισκεφτείτε το https://groups.google.com/d/msgid/soft1/ed7da349-4304-4c17-ae5f-d316c5de78ban%40googlegroups.com.

Ioannis Gkouziotis

unread,
May 8, 2026, 7:23:25 AM (9 days ago) May 8
to Softone Developers Network
Ναι, αυτό φαίνεται να κάνει τη δουλεια που χρειάζομαι. Ευχαριστώ πάρα πολύ. Μήπως γνωρίζετε αν υπάρχει κάτι αντίστοιχο και για την αποστολή email μέσω

x = CallPublished('SysRequest.doSendMail3', VarArray(strTO, strCC, strBCC, strSubject, strBodyPlain, strBodyHTML, strAttachment, strFromName, vEmailAccount, 9));

Stratos Skarlatos

unread,
May 10, 2026, 3:10:21 AM (8 days ago) May 10
to so...@googlegroups.com
Χαίρεται,

Αν ο σκοπός είναι απλά να αποθηκεύεται το παραστατικο το αρχείο κατά την εκτύπωση βάλε το μονοπάτι αποθήκευσης στις παραμέτρους της φόρμας εκτύπωσης 

Για να δείτε αυτή τη συζήτηση, επισκεφτείτε το https://groups.google.com/d/msgid/soft1/b726d726-58be-410c-b099-6420e97e326an%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages