====== Custom Mapping functions ====== Analogous to the integration of individual [[en:transformation:mappings:objektdefinition:start|Custom-Objekt-Klassen]] and [[en:howtos:plugins:jobsteps:start]], eBiss also offers the possibility to extend the scope of [[en:transformation:mappings:funktionen:start|]]. Whether a specific function needs to be developed can only be determined after a detailed examination of the requirement. Pranke GmbH is available for inquiries of this kind. {{:images:sign_warning.png?nolink|}}**Note:**: Before you consider a custom mapping function, we recommend that you search in the [[https://www.w3.org/TR/1999/REC-xpath-19991116/|XQuery 1.0 and XPath 1.0 Functions and Operators]]((https://www.w3.org/TR/xpath/all/, e.g. „upper-case() and lower-case() are XPath 2.0 function…“)) to make sure there's not already a way to do that. ===== Samples ===== C# Code for plugin with various custom mapping functions. * **ValidateGLN()** to validate the GLN/ILN numbers ((The length and the checksum are checked.)). * **ValidateBarcode()** validates any barcode ID * **Abs()** calculates the absolute amount of a number. * **Map.Functions.CountryCode('DE')**, loads the country code from a user defined table/view from current eBiss DB. * **Map.Functions.CountryCodeFromDb('DE')**, loads the country code from a user defined table/view from a different DB. {{indexmenu>:en:transformation:mappings:funktionen:custom:#1}}