|
Witam.
To co podajesz to jest po raz kolejny modyfikacja źródeł. Tak diffem ale jest, o tym za chwilę.
Odnosząc się do tworzenia faktur sądzę że znalazłem niedopatrzenie ale może się mylę.
W pliku tcpdf.php jest odniesienie do Logo która ma się pojawić na fakturze jednak zmienna K_PATH_IMAGES jest w oryginale definiowana w osobnym pliku autoconfig który tutaj nie jest wczytywany zatem proponuję zmianę tak aby logo było czytane z miejsca które jest wskazane w opisie. W moim przypadku dla logo o równych bokach rozmiar 50 okazał się za duży gdyż wchodził w przestrzeń wystawiającego dlatego zmiana na 38:
--- tcpdf-org.php 2020-12-11 17:36:35.000000000 +0100
+++ tcpdf.php 2020-12-12 22:48:26.793112838 +0100
@@ -42,9 +42,9 @@
public function Header()
{
/* insert your own logo in lib/tcpdf/images/logo.png */
- $image_file = K_PATH_IMAGES . 'logo.png';
+ $image_file = 'lib/tcpdf/images/logo.png';
if (file_exists($image_file)) {
- $this->Image($image_file, 13, 10, 50, '', 'PNG', '', 'T', false, 300, '', false, false, 0, false, false, false);
+ $this->Image($image_file, 13, 10, 38, '', 'PNG', '', 'T', false, 300, '', false, false, 0, false, false, false);
}
}
Analizując plik LMSDocuments.php można dojść do wniosku iż wybranie zawartości faktury odbywa się w oparciu o podany plik przez użytkownika bądź o wcześniej zdefiniowane standardy co widać w tym fragmencie:
public function Draw($data)
{
parent::Draw($data);
if (isset($this->data['invoice'])) {
$template = ConfigHelper::getConfig('invoices.cnote_template_file');
} else {
$template = ConfigHelper::getConfig('invoices.template_file');
}
switch ($template) {
case "standard":
$this->invoice_body_standard();
break;
case "FT-0100":
$this->invoice_body_ft0100();
break;
}
Zatem, według mnie, nie ma potrzeby wprowadzania żadnej modyfikacji plików LMS tylko trzeba dojść do tego jak powinna wyglądać zawartość pliku template_file .php
Nie stety nigdzie nie natrafiłem chociażby na jakikolwiek wzór dlatego pojawiła się moja prośba.
Być może taka zawartość jest w LMS+ ale szczerze mówiąc kwota roczna jest dość spora jak na nasze potrzeby.
Zatem zostaje albo samemu dojść albo może jest ktoś kto rozpracował to i odsprzeda swój szablon za jakąś rozsądna kwotę. W razie czego proszę o kontakt prv.
W Twoim liście datowanym sobota, 12 grudnia 2020 (12:02:16) można przeczytać:
|
Diff :)
-class LMSTcpdfInvoice extends LMSInvoice
+class LMSTcpdfsaInvoice extends LMSInvoice
sob., 12 gru 2020 o 12:00 Przemysław Kudyba <zlyzwierz@gmail.com> napisał(a):
|
Nie wiem, czy dobrze zrozumiałem, ale chciałbyś mieć szablon FV, którego nie nadpisywałaby aktualizacja LMS-a.
Można to ogarnąć bardzo prosto dla FV :)
Jest tam w kodzie takie coś:
LMSManagers/LMSFinanceManager.php:
|
if ($type == 'pdf') {
$pdf_type = ConfigHelper::getConfig('invoices.pdf_type', 'tcpdf');
$pdf_type = ucwords($pdf_type);
$classname = 'LMS' . $pdf_type . 'Invoice'; |
Wystarczy zmienną pdf_type (z poziomu uiconfig->invoices) z tcpdf zmienić na tcpdfsa.
Potem w lib/LMSDocuments
cp LMSTcpdfInvoice.php LMSTcpdfSaInvoice.php
i w LMSTcpdfSaInvoice.php zrobić:
|
--- LMSTcpdfSaInvoice.php 2020-12-12 11:58:05.450908840 +0100
+++ LMSTcpdfInvoice.php 2020-11-23 17:51:28.000000000 +0100
@@ -24,7 +24,7 @@
* $Id$
*/
-class LMSTcpdfsaInvoice extends LMSInvoice
+class LMSTcpdfInvoice extends LMSInvoice
{
const TCPDF_FONT = 'liberationsans'; |
potem composer update i voila :)
Dla innych szablonów nie próbowałem.
sob., 12 gru 2020 o 09:45 Andrzej Banach <andzio@net-komp.net.pl> napisał(a):
|
invoice.html
W dniu 12.12.2020 o 02:19, Marek Adamski pisze:
> Witaj Tomasz,
>
> Chcę wykorzystać opcję w LMS:
> invoices template_file
> invoices type pdf
>
> Jeżeli dobrze rozumiem to po ustawieniu type = pdf a template_file = rachunek.php to plik rachunek.php będzie generował mi własny obraz dokumentu w pdf.
> Chcę zrobić rachunek.php aby zamiast napisu faktura pojawiał się napis rachunek.
> Wiem że mogę przerobić odpowiednie pliki kodu LMS albo tłumaczenia ale przy każdej aktualizacji pliki mogą zostać nadpisane albo nastąpić w nich zmiany.
> Dlatego też wolę zrobić plik rachunek.php umieszczony w templates aby przypadkiem moje zmiany nie zostały nadpisane z aktualizacją, jednak nie mam pojęcia jak taki plik powinien wyglądać. Próbowałem coś robić ale za każdym razem powstawał pusty dokument.
> Przydał by się jakiś przykładowy plik.
>
> W Twoim liście datowanym sobota, 12 grudnia 2020 (00:57:38) można przeczytać:
>
>> W dniu 12.12.2020 00:39, Marek Adamski napisał(a):
>>> Witaj Marek,
>
>> Witaj Tomasz ;-)
>
>>> To może chociaż jak powinien wyglądać szablon.php dla faktury pdf, bez
>>> zawartości. Próbuję to zrobić ale nie mam pojęcia jak się za to
>>> zabrać.
>>> Jak powinien wyglądać początek i koniec pliku bez tabel i całej reszty?
>
>> Skoro nikt nie odpowiedział to albo nikt nie miał czasu, albo nikt nie zrozumiał Twojego
>> pytania. Co chcesz uzyskać - wyizolować jakiś fragment kodu generującego wygląd faktury w PDF
>> bez jakichś specyficznych fragmentów? Opisz bardziej precyzyjnie ;-)
>
>
>
>
_______________________________________________
lms mailing list
lms@lists.lms.org.pl
https://lists.lms.org.pl/mailman/listinfo/lms |
|
|
--
Pozdrowienia,
****************************
* Marek (SirAdams) Adamski *
* LMS: 25 *
* http://www.siradams.com/ *
* GG:14747 *
* Linux user:#253788 *
**************************** |