Witam
Próbuję zrobić wysyłkę faktur mailem w pdf. Przy próbie otwarcia
wysłanego pliku jest prośba o podanie hasła. Natomiast faktura pobrana z
panelu lms działa ok.
o co chodzi z tym hasłem?
Pozdrawiam
--
Dariusz Raczkowski
www.atrium-pc.pl
ul. Głogowska 181
60-121 Poznań
gg: 11995886
tel/phone: +48 61 662 12 21
tel kom./cellphone: +48 664 167 788
Witam szanowne grono.
Korzysta ktoś z Was opcjonalnie z możliwości wysyłki faktur w wersji
papierowej za pośrednictwem postivo.pl?
Po upgradzie LMSa z 1.11.13 do 1.11.23 mamy problem z załącznikami
wysyłanymi do tego serwisu poprzez API.
Otrzymujemy komunikat o uszkodzonych plikach.
Sprawdzam poprawność wygenerowanych w systemie dokumentów pdf w
walidatorze, otrzymuję następującą informację:
--------------------------------------------------------------------------------------------------------------------------------
Compliance pdf1.7
Result Document does not conform to PDF/A.
Details
Validating file "FAKTURA_AIR_NET_L_103_02_2019_Data.pdf" for conformance
level pdf1.7
XML line 1:1: Start tag expected, '<' not found.
The document does not conform to the requested standard.
The document's meta data is either missing or inconsistent or corrupt.
The document does not conform to the PDF 1.7 standard.
Done.
--------------------------------------------------------------------------------------------------------------------------------
Oczywiście dokumenty da się otworzyć, jednak skrypt obsługujący API po
stronie dostawcy w/w usługi nie przyjmuje ich do dalszego przetwarzania.
Do generowania plików używam backendu domyślnego: TCPDF.
Zainstalowany LMS w wersji z paczki "011123".
Wykonałem aktualizację composera, wyczyściłem cache, zrobiłem również
repair*
alexei/sprintf.js 1.1.1
components/jquery 3.3.1 jQuery JavaScript Library
components/jqueryui 1.12.1 jQuery UI is a curated set of user
interface interactions, effects, widgets, and themes built on top of the
jQuery JavaScript Library. Whether you're building highly interactive
web appl...
components/normalize.css 3.0.3 Normalize.css is a customisable CSS
file that makes browsers render all elements more consistently and in
line with modern standards.
datatables/datatables 1.10.19 DataTables is a plug-in for the jQuery
Javascript library. It is a highly flexible tool, based upon the
foundations of progressive enhancement, which will add advanced
interaction contro...
erusev/parsedown 1.7.1 Parser for Markdown.
gusapi/gusapi 3.3.2 Gus Api Library for PHP
pear/console_getopt v1.4.2 More info available on:
http://pear.php.net/package/Console_Getopt
pear/mail v1.4.1 Class that provides multiple interfaces
for sending emails.
pear/pear-core-minimal v1.10.7 Minimal set of PEAR core files to be
used as composer dependency
pear/pear_exception v1.0.0 The PEAR Exception base class.
phine/exception 1.0.0 A PHP library for improving the use of
exceptions.
phine/observer 2.0.0 A PHP library that implements the
observer pattern.
phpmailer/phpmailer v5.2.27 PHPMailer is a full-featured email
creation and transfer class for PHP
rospdf/pdf-php 0.12.49 The R&OS Pdf class supports the
creation of PDF documents without any adiditional modules or extensions.
setasign/fpdi 1.6.2 FPDI is a collection of PHP classes
facilitating developers to read pages from existing PDF documents and
use them as templates in FPDF. Because it is also possible to use FPDI
with TCPD...
setasign/fpdi-tcpdf 1.6.1 Kind of metadata package for
dependencies of the latest versions of FPDI and TCPDF.
smarty/smarty v3.1.31 Smarty - the compiling PHP template engine
spipu/html2pdf v4.6.1 HTML2PDF is a HTML to PDF converter
written in PHP5 (it uses TCPDF). OFFICIAL PACKAGE
tecnickcom/tcpdf 6.2.26 TCPDF is a PHP class for generating PDF
documents and barcodes.
xdan/datetimepicker 2.5.12
Dokładnie sprawdziłem skrypt służący do komunikacji z API Postivo, nie
mam do niego zastrzeżeń. Identyczny komunikat o uszkodzonych plikach
otrzymuję przy ręcznej próbie załączenia faktury w panelu użytkownika
tego portalu. Sprawdziłem również pliki faktur generowanych z LMSów w
nowej wersji od zaprzyjaźnionych operatorów - wynik wyszedł taki jak u
nas, więc nie jest to problem dotyczący wyłącznie naszej instalacji.
Próbowałem również zmienić backend na EZPDF [invoices.pdf_type=ezpdf],
jednak otrzymuję komunikat błędu z LMSa przy próbie wygenerowania pliku:
lms3-011123/vendor/rospdf/pdf-php/src/include/TTF.php[634]: Internal
error - formatType is 0.0
którego to problemu jak dotąd nie udało mi się rozwiązać.
Czy mógłbym prosić o jakieś sugestie jak obejść w/w problemy?
Może łatwiej będzie usprawnić ezpdf, tylko od czego zacząć? Nie znajduje
użytecznej informacji na ten temat, poza zgłoszeniami o występowaniu
podobnego błędu formatu u niektórych użytkowników systemu.
Z morskim pozdrowieniem,
--
Jacek Kotlarski
Witam,
biorąc ze strony lms:
improvement: published_document_modification privilege controls if user
can modify/delete
published documents [chilan]
Pytanie jaka była tego koncepcja?
W tej chwili bez ustawienia tych uprawnień faktura w pdf wychodzi z
info że nie jest to dokument kasowy
w customerbalancebox.html
?m=invoice&id={$item.docid}&dontpublish=1
dontpublish jest dodane
przy tym
# SELECT published FROM documents WHERE id=2024;
published
-----------
1
published jest 1
Być może tak miało być ale to nie tylko kontroluje
modyfikowanie/kasowanie ale również wpływa na możliwość wydruku.
Jeżelii miało to być zabezpieczenie wystarczy skasować końcówkę urla i
można normalnie uzyskać fakturę.
Normalnie utrudnia wydruk a z drugiej strony nie zabezpiecza to przed
wydrukiem.
Witam,
Patrzę w git:
templates/default/invoices/invoice.html
linia 35 brakuje {
faktura html wyświetla:
Data sprzedaży: $invoice.sdate|date_format:"%Y/%m/%d"}
Witam,
Przy próbie dodania nowego projektu dostaję błąd - BŁĄD: pusta wartość
w kolumnie "name" narusza ograniczenie wymaganej wartości DETAIL:
Patrzę w tej chwili na wersję dostępną git.
W pliku invprojectadd.php
$LMS->AddProject(array(
'projectname' => $invproject['name'],
'divisionid' => $invproject['divisionid'],
));
w LMSProjectManager.php
public function AddProject($project) {
$this->db->Execute("INSERT INTO invprojects (name,
divisionid, type) VALUES (?, ?, ?)",
array(
$project['project'],
isset($project['divisionid']) &&
!empty($project['divisionid']) ? $project['divisionid'] : null,
INV_PROJECT_REGULAR
)
);
albo "project" albo "projectname", zmienne się nie zgadzają.