///<summary></summary>
 public static long Insert(EServiceBilling eServiceBilling)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         eServiceBilling.EServiceBillingNum = Meth.GetLong(MethodBase.GetCurrentMethod(), eServiceBilling);
         return(eServiceBilling.EServiceBillingNum);
     }
     return(Crud.EServiceBillingCrud.Insert(eServiceBilling));
 }
        ///<summary>Must be connected to customers db. Gets itemized charges which have been serialized to specific eServiceBilling row for given regKeyNum and billDate.</summary>
        public static List <EServiceInvoiceLineItem> GetByRegKeyNumAndBillDate(long regKeyNum, DateTime billDate)
        {
            //HQ only. No remoting role needed.
            string          command = "SELECT * FROM eservicebilling WHERE RegistrationKeyNum = " + POut.Long(regKeyNum) + " AND DateOfBill=" + POut.Date(billDate);
            EServiceBilling esb     = Crud.EServiceBillingCrud.SelectOne(command);

            if (esb == null || string.IsNullOrEmpty(esb.ItemizedCharges))
            {
                return(new List <EServiceInvoiceLineItem>());
            }
            return(JsonConvert.DeserializeObject <List <EServiceInvoiceLineItem> >(esb.ItemizedCharges));
        }