[Gelöst] Fehlermeldung bei Belegerstellung (Rechnung Lieferschein etc.)

Hallo @ all

Ich habe bereits erfahrung mit Shopware gemacht gehabt und seit 2 Wochen die Aktuellste (5.2.27) frisch installiert und alles soweit eingestellt.

Der Shop ist jetzt Online, alles funktioniert einwandfrei (Bestellungen Warenkorb usw.)

Wenn ich jetzt eine Rechnung generieren will, erhalte ich folgenden Fehler:

 

exception 'SmartyCompilerException' with message 'Syntax Error in template "/mnt/web218/e2/54/53692754/htdocs/Shop/Shopware/themes/Frontend/Bare/documents/index.tpl" on line 267 "{/if}" unclosed {block} tag' in /engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php:657 Stack trace:
#0 /engine/Library/Smarty/sysplugins/smarty_internal_compilebase.php(166): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unclosed {block...')
#1 /engine/Library/Smarty/sysplugins/smarty_internal_compile_foreach.php(224): Smarty_Internal_CompileBase->closeTag(Object(Smarty_Internal_SmartyTemplateCompiler), Array)
#2 /engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(465): Smarty_Internal_Compile_Foreachclose->compile(Array, Object(Smarty_Internal_SmartyTemplateCompiler), Array, NULL, NULL)
#3 /engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(249): Smarty_Internal_TemplateCompilerBase->callTagCompiler('foreachclose', Array, Array)
#4 /engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(2493): Smarty_Internal_TemplateCompilerBase->compileTag('foreachclose', Array)
#5 /engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r58()
#6 /engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(58)
#7 /engine/Library/Smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(105): Smarty_Internal_Templateparser->doParse(10, '\n ')
#8 /engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(192): Smarty_Internal_SmartyTemplateCompiler->doCompile('..')
#9 /engine/Library/Smarty/sysplugins/smarty_internal_template.php(187): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Enlight_Template_Default))
#10 /engine/Library/Smarty/sysplugins/smarty_internal_templatebase.php(155): Smarty_Internal_Template->compileTemplateSource()
#11 /engine/Shopware/Components/Document.php(249): Smarty_Internal_TemplateBase->fetch('documents/index...', Object(Smarty_Data))
#12 /engine/Shopware/Controllers/Backend/Document.php(67): Shopware_Components_Document->render()
#13 /engine/Library/Enlight/Controller/Action.php(159): Shopware_Controllers_Backend_Document->indexAction()
#14 /engine/Library/Enlight/Controller/Dispatcher/Default.php(523): Enlight_Controller_Action->dispatch('indexAction')
#15 /engine/Library/Enlight/Controller/Front.php(223): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp))
#16 /engine/Shopware/Kernel.php(182): Enlight_Controller_Front->dispatch()
#17 /vendor/symfony/http-kernel/HttpCache/HttpCache.php(491): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#18 /engine/Shopware/Components/HttpCache/AppCache.php(266): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL)
#19 /vendor/symfony/http-kernel/HttpCache/HttpCache.php(258): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true)
#20 /engine/Shopware/Components/HttpCache/AppCache.php(103): Symfony\Component\HttpKernel\HttpCache\HttpCache->pass(Object(Symfony\Component\HttpFoundation\Request), true)
#21 /mnt/web218/e2/54/53692754/htdocs/Shop/Shopware/shopware.php(117): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request))
#22 {main}

Ich benutze das Reponsive Template (eigenes Template)

Grüße tdrom

schaue Dir das folgende Dokument an: themes/Frontend/Bare/documents/index.tpl 

Fehlt da irgendwo ein {/block}?

Ich habe nichts auffälliges gefunden. Würde gern den Text hier verlinken, aber Zeichen zu lang… wie teile ich so eine Datei/Inhalt?!  :)

Schaue mal in allen documents .tpl ob Du genauso viele {/block} wie auch {block hast.

body {
    {$Containers.Body.style}
}

div#head_logo {
    {$Containers.Logo.style}
}

div#head_sender {
    {$Containers.Header_Recipient.style}
}

div#header {
    {$Containers.Header.style}
}

div#head_left {
    {$Containers.Header_Box_Left.style}
}

div#head_right {
    {$Containers.Header_Box_Right.style}
}

div#head_bottom {
    {$Containers.Header_Box_Bottom.style}
}

div#content {
    {$Containers.Content.style}
}

td {
    {$Containers.Td.style}
}

td.name {
    {$Containers.Td_Name.style}
}

td.line {
    {$Containers.Td_Line.style}
}

td.head {
    {$Containers.Td_Head.style}
}

#footer {
    {$Containers.Footer.style}
}

#amount {
    {$Containers.Content_Amount.style}
}

#sender {
    {$Containers.Header_Sender.style}
}

#info {
    {$Containers.Content_Info.style}
}

Kannst du evtl. den head-teil nur checken? Den Rest schaue ich mir gerade durch

    {block name="document_index_table_each"}
    
        {block name="document_index_table_pos"}
            
                {$number+1}
            
        {/block}
        {block name="document_index_table_nr"}
            
                {$position.articleordernumber|truncate:14:""}
            
        {/block}
        {block name="document_index_table_name"}
            
            {if $position.name == 'Versandkosten'}
                {s name="DocumentIndexPositionNameShippingCosts"}{$position.name}{/s}
            {else}
                {s name="DocumentIndexPositionNameDefault"}{$position.name|nl2br|wordwrap:65:"\n"}{/s}
            {/if}
            
        {/block}
        {block name="document_index_table_quantity"}
            
                {$position.quantity}
            
        {/block}
        {block name="document_index_table_tax"}
            {if $Document.netto != true}
                
                    {$position.tax} %
                
            {/if}
        {/block}
        {block name="document_index_table_price"}
            {if $Document.netto != true && $Document.nettoPositions != true}
                
                    {$position.price|currency}
                
                
                    {$position.amount|currency}
                
            {else}
                
                    {$position.netto|currency}
                
                
                    {$position.amount_netto|currency}
                
            {/if}
        {/block}
    
    {/block}
    {/foreach}

wenn überhaupt, ist in diesem teil ein 

|  und 
| |
jeweils direkt nach block /vor block. Nur in dem oben gennanten bereich aber auch.  Ansonsten sind alle Block bereiche vollständig.

In allen Files in themes/Frontend/Bare/documents/ und themes/Frontend/DEINTHEME/documents/ ?

themes/Frontend/DEINTHEME/documents/ 

order ist leer

 

und

themes/Frontend/Responsive/documents/

der ordner documents existiert nicht

Evtl hilft das noch weiter:

Beleg wurde zwar erstellt, aber vorschau etc. nicht möglich.

Wenn ich auf die Datei klicke, kommt folgender fehler (sowohl Lieferschein als auch Rechnung)

{"success":false,"data":{"id":"b55bbed9e6d6761701e9dc7f0338d918","module":"backend","controller":"Order","action":"openPdf"},"message":"File not exist"}

 

na ja, die PDF wurde ja nicht erstellt, darum wird sie nicht gefunden.

Lade noch mal die tpls sauber hoch: shopware/themes/Frontend/Bare/documents at 5.3 · shopware/shopware · GitHub

oder die: shopware/themes/Frontend/Bare/documents at v5.2.27 · shopware/shopware · GitHub

 

1 Like

irgendwo hat irgend etwas nicht gestimmt… aber jetzt alles Top  Thumb-Up

 

Danke, dachte schon ich muss alles nochmal machen  Grin

wir haben aktuell das selbe Problem. Mit diesen dateien funktioniert es bei uns aber leider nicht. Wir haben die neueste Firmware drauf.

Was können wir tun?

Gruß