diff --git a/paperless-backend/src/label-print-agent/label-print-agent.service.ts b/paperless-backend/src/label-print-agent/label-print-agent.service.ts index 49be412..4feb61e 100644 --- a/paperless-backend/src/label-print-agent/label-print-agent.service.ts +++ b/paperless-backend/src/label-print-agent/label-print-agent.service.ts @@ -54,6 +54,7 @@ export class LabelPrintAgentService { const raw = fieldValues[field.name]; // erwartet YYYY-MM-DD const parts = raw.split('-'); if (parts.length === 3) { + vars[field.name] = `${parts[2]}.${parts[1]}.${parts[0]}`; // dd.MM.yyyy vars[`${field.name}.year`] = parts[0]; vars[`${field.name}.month`] = parts[1]; vars[`${field.name}.day`] = parts[2]; @@ -165,6 +166,7 @@ export class LabelPrintAgentService { if (field.type === 'date' && fieldValues[field.name]) { const parts = fieldValues[field.name].split('-'); if (parts.length === 3) { + vars[field.name] = `${parts[2]}.${parts[1]}.${parts[0]}`; // dd.MM.yyyy vars[`${field.name}.year`] = parts[0]; vars[`${field.name}.month`] = parts[1]; vars[`${field.name}.day`] = parts[2]; @@ -179,6 +181,7 @@ export class LabelPrintAgentService { this.logger.warn(`GET-URL fehlgeschlagen (${url}): ${err.message}`); } } + if (!('number' in vars)) vars['number'] = '1'; return this.renderer.render( template.LabelLayout, diff --git a/paperless-backend/src/label-print-agent/label-renderer.service.ts b/paperless-backend/src/label-print-agent/label-renderer.service.ts index 108b57e..4ca8071 100644 --- a/paperless-backend/src/label-print-agent/label-renderer.service.ts +++ b/paperless-backend/src/label-print-agent/label-renderer.service.ts @@ -19,8 +19,8 @@ function applyVars(template: string, vars: Record): string { if (colonIdx !== -1) { const varName = key.slice(0, colonIdx); const width = parseInt(key.slice(colonIdx + 1), 10); - if (!isNaN(width) && varName in vars) { - return vars[varName].padStart(width, '0'); + if (!isNaN(width)) { + return (vars[varName] ?? '').padStart(width, '0'); } } return vars[key] ?? `{${key}}`;