void BillingEngine_EinvNodeAdded(object sender, MercatorUi.Engine.Gescom.BillingEngine.EinvNodeAddedEventArgs e)
{
    MercatorUi.Engine.Gescom.BillingEngine billingEngine = (MercatorUi.Engine.Gescom.BillingEngine)sender;
    if ((e.Node.Name == "cac:OrderReference") && (billingEngine.PIEDS["libre1"].ToString().Trim() != string.Empty))
    {
        XmlNode n1 = billingEngine.EinvAddNode(e.eInvoiceEnum, e.ParentNode, "cac:ContractDocumentReference");
        billingEngine.EinvAddNode(e.eInvoiceEnum, n1, "cbc:ID", billingEngine.PIEDS["libre1"].ToString().Trim());
        billingEngine.EinvAddNode(e.eInvoiceEnum, n1, "cbc:DocumentTypeCode", "105", new MercatorUi.Engine.Gescom.Tools.EinvNodeAttribute("listID", "UNCL1001"));
        billingEngine.EinvAddNode(e.eInvoiceEnum, n1, "cbc:DocumentType", "Purchase order");
        XmlNode n2 = billingEngine.EinvAddNode(e.eInvoiceEnum, n1, "cac:ValidityPeriod");
        billingEngine.EinvAddNode(e.eInvoiceEnum, n2, "cbc:StartDate", Convert.ToDateTime(billingEngine.PIEDS["date_ctrat_1"]));
        billingEngine.EinvAddNode(e.eInvoiceEnum, n2, "cbc:EndDate", Convert.ToDateTime(billingEngine.PIEDS["date_ctrat_2"]));
    }
}