Hi Pete,

On Thu, Nov 19, 2020 at 2:57 PM Pete Houston <ph1@openstrike.co.uk> wrote:
Hi Erik,

Thank you for these instructions. I have succeeded in loading the
templates en masse using the setup.pl method.

I have found that the templates need some reworking in order to be
processed in the new LSMB. Having done that and the TT part of the
process now running to completion

That's good progress! Nice!
 
the remaining problem is that the document presented to us is not the 
postscript output but is simply the raw latex source.

Ok. Can you share the first line(s) of your template? I think I know what's missing, but would like to confirm it.
 
Although there are plenty of lines in the error log (see below), none
of them seem to explain this. What could cause LSMB to return the raw
latex source rather than the generated postscript from it?

LedgerSMB installs a plugin into Template Toolkit which enhances TT to generate the required postscript output -- given the right instructions. This instruction is what I'm looking for in the first few lines of your template.

Regards,

Erik.
 

Thanks,

Pete

On Wed, Nov 18, 2020 at 09:20:53PM +0100, Erik Huelsmann wrote:
> Hi Pete,
>
> Good to hear from you! Happy to see you try to upgrade to something newer
> than 1.2, honestly.
>
> 1.7 doesn't search your disc for the templates for invoices: instead, it
> searches the database. You should be able to upload your templates in bulk
> to your company database by putting them in a subdirectory of the
> templates/ directory. With the templates in that directory, you can log
> into the company database through setup.pl and choose the "Load Templates"
> button. On the resulting page, there's a drop-down which should contain the
> name of the subdirectory in which you placed your templates. Select that
> item in the drop-down and click the "Load Templates" button.
>
> Loading the templates one-by-one should also be possible. That works by
> logging into the company itself from login.pl. Then go to the menu System >
> HTML Templates > Invoicing > Invoice or System > LaTeX Templates >
> Invoicing > Invoice. From there, you should be able to upload *just* the
> invoice of the specific format.
>
>
> Hope that helps (and sorry for the lagging response, I just noticed your
> mail today).
>
> Regards,
>
> Erik.

Here are the log entries resulting from hitting "Print" on a invoice to
print to the screen:

--------------------------------------------------------------------------------
Unquoted string "customer" may clash with future reserved word at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 1152 (#1)
    (W reserved) You used a bareword that might someday be claimed as a
    reserved word.  It's best to put such a word in quotes, or capitalize it
    somehow, or insert an underbar into it.  You might also declare it as a
    subroutine.

Unquoted string "customer" may clash with future reserved word at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 1374 (#1)

Use of uninitialized value in substitution (s///) at
        /var/www/ledgersmb/old/lib/LedgerSMB/Form.pm line 2226 (#2)
    (W uninitialized) An undefined value was used as if it were already
    defined.  It was interpreted as a "" or a 0, but maybe it was a mistake.
    To suppress this warning assign a defined value to your variables.

    To help you figure out what was undefined, perl will try to tell you
    the name of the variable (if any) that was undefined.  In some cases
    it cannot do this, so it also tells you what operation you used the
    undefined value in.  Note, however, that perl optimizes your program
    and the operation displayed in the warning may not necessarily appear
    literally in your program.  For example, "that $foo" is usually
    optimized into "that " . $foo, and the warning will refer to the
    concatenation (.) operator, even though there is no . in
    your program.

Use of uninitialized value in array dereference at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 162 (#2)
Use of uninitialized value $dec in numeric gt (>) at
        /var/www/ledgersmb/old/lib/LedgerSMB/IS.pm line 1429 (#2)
Use of uninitialized value in string eq at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 191 (#2)
Use of uninitialized value in array dereference at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 196 (#2)
Use of uninitialized value in foreach loop entry at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 196 (#2)

Argument "" isn't numeric in numeric le (<=) at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 236 (#3)
    (W numeric) The indicated string was fed as an argument to an operator
    that expected a numeric value instead.  If you're fortunate the message
    will identify which operator was so unfortunate.

    Note that for the Inf and NaN (infinity and not-a-number) the
    definition of "numeric" is somewhat unusual: the strings themselves
    (like "Inf") are considered numeric, and anything following them is
    considered non-numeric.

Use of uninitialized value $lsmb_legacy::myconfig{"acs"} in pattern match (m//)
        at /var/www/ledgersmb/bin/../old/bin/is.pl line 239 (#2)
Use of uninitialized value $dec in numeric gt (>) at
        /var/www/ledgersmb/bin/../old/bin/is.pl line 287 (#2)
Use of uninitialized value in string eq at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 715 (#2)
Use of uninitialized value in string eq at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 744 (#2)
Use of uninitialized value in string eq at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 756 (#2)
Use of uninitialized value in addition (+) at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 916 (#2)
Use of uninitialized value in split at /var/www/ledgersmb/bin/../old/bin/io.pl
        line 1317 (#2)
Use of uninitialized value $IS::inventory_accno_id in string at
        /var/www/ledgersmb/old/lib/LedgerSMB/IS.pm line 217 (#2)
Use of uninitialized value $dec in numeric gt (>) at
        /var/www/ledgersmb/old/lib/LedgerSMB/IS.pm line 338 (#2)
Use of uninitialized value $_[0] in pattern match (m//) at
        /usr/share/perl5/I18N/LangTags.pm line 398 (#2)
Use of uninitialized value in substitution (s///) at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 1386 (#2)
Use of uninitialized value in substitution (s///) at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 1390 (#2)
Use of uninitialized value in substitution (s///) at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 1394 (#2)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_template_modified -- last modified date requested for ./invoice
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, , tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, -undef-, tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Match found
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_template_modified -- last modified date requested for ./invoice
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, , tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, -undef-, tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Match found
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_template_content -- Retrieving template content for ./invoice
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, , tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, -undef-, tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Match found
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_template_modified -- last modified date requested for ./invoice
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, , tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Retrieving template for (invoice, -undef-, tex)
Req:B43BF4542A6E11EBBF1153DC3F926520 2020/11/19 13:54:13 - INFO - LedgerSMB::Template::DBProvider::_retrieve_template_data -- Match found
Use of uninitialized value $old_form in hash dereference at
        /var/www/ledgersmb/bin/../old/bin/io.pl line 1519 (#2)
Req:B43BF4542A6E11EBBF1153DC3F926520 192.168.10.6 - - [19/Nov/2020:13:54:13 +0000] "POST /is.pl HTTP/1.1" 200 3707 "http://oldpalma/ledgersmb/login.pl?action=login&company=testbooks" "Mozilla/5.0 (X11; Linux x86_64; rv:68.9) Gecko/20100101 Goanna/4.7 Firefox/68.9 PaleMoon/28.15.0"
--------------------------------------------------------------------------------

--
Openstrike - improving business through open source
https://www.openstrike.co.uk/ or call 01722 770036


--
Bye,

Erik.

http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.