Exemplo n.º 1
0
 public static ItemType Item(ItemIdentificationType sellersItemsIdentification = null)
 {
     return(new ItemType
     {
         SellersItemIdentification = sellersItemsIdentification
     });
 }
        private string GetItemIdentification(ItemIdentificationType ItemIdentification)
        {
            string r = "";

            if (ItemIdentification != null)
            {
                if (ItemIdentification.ID != null)
                {
                    r = ItemIdentification.ID.Value;
                }
            }
            return(r);
        }
Exemplo n.º 3
0
        public CreditNoteLineType[] getCreditNoteLine()
        {
            CreditNoteLineType HILT = new CreditNoteLineType();

            CreditNoteLineType[] MILT = new CreditNoteLineType[VD.li];

            for (int i = 0; i < VD.li; ++i)
            {
                MILT[i] = new CreditNoteLineType();

                IDType HIT = new IDType();
                HIT.Value  = (i + 1).ToString();
                MILT[i].ID = HIT;

                CreditedQuantityType HIQT = new CreditedQuantityType();
                HIQT.unitCode            = Interface["LnUndMed" + (i + 1)];
                HIQT.unitCodeSpecified   = true;
                HIQT.Value               = Interface["LnCantidad" + (i + 1)];
                MILT[i].CreditedQuantity = HIQT;

                LineExtensionAmountType HLEAT = new LineExtensionAmountType();
                HLEAT.currencyID = Interface["Tmoneda"];
                HLEAT.Value      = Interface["LnValVta" + (i + 1)];

                MILT[i].LineExtensionAmount = HLEAT;

                PricingReferenceType   HPRT = new PricingReferenceType();
                PricingReferenceType[] MRPT = { HPRT, HPRT };

                PriceType       HPCT = new PriceType();
                PriceType[]     MPCT = null;
                PriceAmountType HXPT = new PriceAmountType();

                if (Interface["LnCodAfecIGV" + (i + 1)] == "10" || Interface["LnCodAfecIGV" + (i + 1)] == "20" || Interface["LnCodAfecIGV" + (i + 1)] == "30" || Interface["LnCodAfecIGV" + (i + 1)] == "40")
                {
                    MPCT = new PriceType[] {
                        new PriceType()
                        {
                            PriceAmount = new PriceAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = Interface["LnMntPrcVta" + (i + 1)]
                            },
                            PriceTypeCode = new PriceTypeCodeType()
                            {
                                Value = "01"
                            }
                        }
                    };
                }
                else
                {
                    MPCT = new PriceType[] {
                        new PriceType()
                        {
                            PriceAmount = new PriceAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = "0.00"
                            },
                            PriceTypeCode = new PriceTypeCodeType()
                            {
                                Value = "01"
                            }
                        },
                        new PriceType()
                        {
                            PriceAmount = new PriceAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = Interface["LnMntPrcVta" + (i + 1)]
                            },
                            PriceTypeCode = new PriceTypeCodeType()
                            {
                                Value = "02"
                            }
                        },
                    };
                }

                MRPT[0].AlternativeConditionPrice = MPCT;

                MILT[i].PricingReference = MRPT[0];

                // TAX TOTAL
                double o = 0;
                double.TryParse(Interface["LnMntISC" + (i + 1)], out o);

                var igvPercent = Interface["LnIgvPercentage" + (i + 1)];
                if (igvPercent == null || igvPercent.Length == 0)
                {
                    igvPercent = "18.00";
                }

                if (o > 0)
                {
                    MILT[i].TaxTotal = new TaxTotalType[] {
                        new TaxTotalType()
                        {
                            TaxAmount = new TaxAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = Interface["LnMntIGV" + (i + 1)]
                            },
                            TaxSubtotal = new TaxSubtotalType[]
                            {
                                new TaxSubtotalType()
                                {
                                    TaxableAmount = new TaxableAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = "0.00"
                                    },
                                    TaxAmount = new TaxAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = Interface["LnMntIGV" + (i + 1)]
                                    },
                                    Percent = new PercentType()
                                    {
                                        //credit note igv
                                        //Value = "18.00"
                                        Value = igvPercent
                                    },
                                    TaxCategory = new TaxCategoryType()
                                    {
                                        TaxExemptionReasonCode = new TaxExemptionReasonCodeType()
                                        {
                                            Value = Interface["LnCodAfecIGV" + (i + 1)]
                                        }, TaxScheme = new TaxSchemeType()
                                        {
                                            ID = new IDType()
                                            {
                                                Value = "1000"
                                            },
                                            Name = new NameType1()
                                            {
                                                Value = "IGV"
                                            },
                                            TaxTypeCode = new TaxTypeCodeType()
                                            {
                                                Value = "VAT"
                                            }
                                        }
                                    }
                                }
                            }
                        },
                        new TaxTotalType()
                        {
                            TaxAmount = new TaxAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = Interface["LnMntISC" + (i + 1)]
                            },
                            TaxSubtotal = new TaxSubtotalType[]
                            {
                                new TaxSubtotalType()
                                {
                                    TaxableAmount = new TaxableAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = "0.00"
                                    },
                                    TaxAmount = new TaxAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = Interface["LnMntISC" + (i + 1)]
                                    },
                                    TaxCategory = new TaxCategoryType()
                                    {
                                        TaxExemptionReasonCode = new TaxExemptionReasonCodeType()
                                        {
                                            Value = ""
                                        },
                                        TierRange = new TierRangeType()
                                        {
                                            Value = Interface["LnCodSisISC" + (i + 1)]
                                        },
                                        TaxScheme = new TaxSchemeType()
                                        {
                                            ID = new IDType()
                                            {
                                                Value = "2000"
                                            },
                                            Name = new NameType1()
                                            {
                                                Value = "ISC"
                                            },
                                            TaxTypeCode = new TaxTypeCodeType()
                                            {
                                                Value = "EXC"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    };
                }
                else
                {
                    MILT[i].TaxTotal = new TaxTotalType[] {
                        new TaxTotalType()
                        {
                            TaxAmount = new TaxAmountType()
                            {
                                currencyID = Interface["Tmoneda"],
                                Value      = Interface["LnMntIGV" + (i + 1)]
                            },
                            TaxSubtotal = new TaxSubtotalType[]
                            {
                                new TaxSubtotalType()
                                {
                                    TaxableAmount = new TaxableAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = "0.00"
                                    },
                                    TaxAmount = new TaxAmountType()
                                    {
                                        currencyID = Interface["Tmoneda"],
                                        Value      = Interface["LnMntIGV" + (i + 1)]
                                    },
                                    Percent = new PercentType()
                                    {
                                        //Credit note igv
                                        //Value = "18.00"
                                        Value = igvPercent
                                    },
                                    TaxCategory = new TaxCategoryType()
                                    {
                                        TaxExemptionReasonCode = new TaxExemptionReasonCodeType()
                                        {
                                            Value = Interface["LnCodAfecIGV" + (i + 1)]
                                        }, TaxScheme = new TaxSchemeType()
                                        {
                                            ID = new IDType()
                                            {
                                                Value = "1000"
                                            },
                                            Name = new NameType1()
                                            {
                                                Value = "IGV"
                                            },
                                            TaxTypeCode = new TaxTypeCodeType()
                                            {
                                                Value = "VAT"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    };
                }

                // PRICE
                HPCT            = null;
                HPCT            = new PriceType();
                HXPT            = null;
                HXPT            = new PriceAmountType();
                HXPT.currencyID = Interface["Tmoneda"];

                HXPT.Value = Interface["LnValUnit" + (i + 1)];

                HPCT.PriceAmount = HXPT;
                MILT[i].Price    = HPCT;

                // ITEM
                ItemType          HIMT = new ItemType();
                DescriptionType   HDT  = new DescriptionType();
                DescriptionType[] MDT  = { HDT };

                MDT[0].Value = "<![CDATA[" + Interface["LnDescrip" + (i + 1)] + "]]>";


                ItemIdentificationType HIIT = new ItemIdentificationType();
                HIT = null; HIT = new IDType();

                HIT.Value = "<![CDATA[" + Interface["LnCodProd" + (i + 1)] + "]]>";

                HIIT.ID = HIT;

                HIMT.Description = MDT;
                HIMT.SellersItemIdentification = HIIT;

                MILT[i].Item = HIMT;
            }
            return(MILT);
        }