NFe.ConvertTxt.NFeW.GerarDetImpostoCOFINSST C# (CSharp) Method

GerarDetImpostoCOFINSST() private method

GerarDetImpostoCOFINSST
private GerarDetImpostoCOFINSST ( NFe nfe, COFINSST COFINSST, XmlElement nodeImposto ) : void
nfe NFe
COFINSST COFINSST
nodeImposto System.Xml.XmlElement
return void
        private void GerarDetImpostoCOFINSST(NFe nfe, COFINSST COFINSST, XmlElement nodeImposto)
        {
            if ((COFINSST.vBC > 0) ||
                (COFINSST.pCOFINS > 0) ||
                (COFINSST.qBCProd > 0) ||
                (COFINSST.vAliqProd > 0) ||
                (COFINSST.vCOFINS > 0))
            {
                if ((COFINSST.vBC + COFINSST.pCOFINS > 0) && (COFINSST.qBCProd + COFINSST.vAliqProd > 0))
                    this.cMensagemErro += "COFINSST: As TAG's <vBC> e <pCOFINS> não podem ser informadas em conjunto com as TAG <qBCProd> e <vAliqProd>" + Environment.NewLine;

                XmlElement node0 = doc.CreateElement("COFINSST");
                nodeCurrent = node0;

                if (COFINSST.vBC + COFINSST.pCOFINS > 0)
                {
                    nodeImposto.AppendChild(node0);

                    wCampo(COFINSST.vBC, TpcnTipoCampo.tcDec2, TpcnResources.vBC);
                    wCampo(COFINSST.pCOFINS, this.nDecimaisPerc, TpcnResources.pCOFINS);
                    wCampo(COFINSST.vCOFINS, TpcnTipoCampo.tcDec2, TpcnResources.vCOFINS);
                }
                if (COFINSST.qBCProd + COFINSST.vAliqProd > 0)
                {
                    nodeImposto.AppendChild(node0);

                    wCampo(COFINSST.qBCProd, TpcnTipoCampo.tcDec4, TpcnResources.qBCProd);
                    wCampo(COFINSST.vAliqProd, TpcnTipoCampo.tcDec4, TpcnResources.vAliqProd);
                    wCampo(COFINSST.vCOFINS, TpcnTipoCampo.tcDec2, TpcnResources.vCOFINS);
                }
            }
        }