File-Cover Customizing
Customizing
Diese Anleitung beschreibt, welche Möglichkeiten es gibt, das React-File-Cover-Gadget anzupassen.
Voraussetzung ist die Library-Version verstionNext oder höher.
Eine nähere Beschreibung der einzelnen Optionen, die an das Gadget übergeben werden können, ist unter CoverData zu finden.
Das Invoice-Cover wird nun nicht mehr aus der CustomProperty
ou.sp.ptpINV.cover.html gezogen sondern direkt als React-Komponente im Client
eingebunden. D.h. es besteht nicht mehr die Möglichkeit, Anpassungen über eine
eigene CustomProperty – z.B. ou.cust.ptpINV.cover.html – vorzunehmen und
diese in ou.spc.ptpINV.filetype.field.html.cover.ts als templateUrl zu
übergeben. D.h. jegliches Customizing dieser Art muss entweder in eine Template
oder einen Overwrite überführt werden.
Templates
Über ein Objekt templates am Objekt CoverData können Templates vor und nach
jeder Sektion im Invoice-Cover definiert werden, z.B.:
ou.spc.ptpINV.filetype.field.html.cover.ts
/* ... */
function getData(docFile) {
return {
templates: {
vendor: {
end: getHtmlTemplate("ou.cust.ptpINV.filetype.field.html.cover.vendorEnd"),
},
}
/* ... */
}
}
Overwrites
Über das Objekt overwrites am Objekt CoverData können einzelne Sektionen
komplett überschrieben werden, z.B.:
/* ... */
function getData(docFile) {
return {
overwrites: {
vendor: getHtmlTemplate("ou.cust.ptpINV.filetype.field.html.cover.vendorOverwrite"),
},
/* ... */
}
}
Als Wert wird jeweils ein HTML-String übergeben werden, der in diesem Fall
durch die Funktion getHtmlTemplate aus den Custom Properties geladen wird.
Dies kann gewöhnliches HTML sein oder – falls dynamische Daten eingebunden
werden sollen – z.B. auch ein Handlebars-Template. Wird ein leerer String
übergeben, wird die entsprechende Sektion nicht angezeigt.