NFePHP\NFe\MakeNFe::tagICMSSN PHP Method

tagICMSSN() public method

tagICMSSN Tributação ICMS pelo Simples Nacional N10c pai N01
public tagICMSSN ( type $nItem = '', type $orig = '', type $csosn = '', type $modBC = '', type $vBC = '', type $pRedBC = '', type $pICMS = '', type $vICMS = '', type $pCredSN = '', type $vCredICMSSN = '', type $modBCST = '', type $pMVAST = '', type $pRedBCST = '', type $vBCST = '', type $pICMSST = '', type $vICMSST = '', type $vBCSTRet = '', type $vICMSSTRet = '' ) : DOMElement
$nItem type
$orig type
$csosn type
$modBC type
$vBC type
$pRedBC type
$pICMS type
$vICMS type
$pCredSN type
$vCredICMSSN type
$modBCST type
$pMVAST type
$pRedBCST type
$vBCST type
$pICMSST type
$vICMSST type
$vBCSTRet type
$vICMSSTRet type
return DOMElement
    public function tagICMSSN($nItem = '', $orig = '', $csosn = '', $modBC = '', $vBC = '', $pRedBC = '', $pICMS = '', $vICMS = '', $pCredSN = '', $vCredICMSSN = '', $modBCST = '', $pMVAST = '', $pRedBCST = '', $vBCST = '', $pICMSST = '', $vICMSST = '', $vBCSTRet = '', $vICMSSTRet = '')
    {
        switch ($csosn) {
            case '101':
                $icmsSN = $this->dom->createElement("ICMSSN101");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                $this->dom->addChild($icmsSN, 'pCredSN', $pCredSN, true, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'vCredICMSSN', $vCredICMSSN, true, "[item {$nItem}] Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional)");
                break;
            case '102':
            case '103':
            case '300':
            case '400':
                $icmsSN = $this->dom->createElement("ICMSSN102");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                break;
            case '201':
                $icmsSN = $this->dom->createElement("ICMSSN201");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                $this->dom->addChild($icmsSN, 'modBCST', $modBCST, true, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'pMVAST', $pMVAST, false, "[item {$nItem}] Percentual da margem de valor Adicionado do ICMS ST");
                $this->dom->addChild($icmsSN, 'pRedBCST', $pRedBCST, false, "[item {$nItem}] Percentual da Redução de BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'vBCST', $vBCST, true, "[item {$nItem}] Valor da BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'pICMSST', $pICMSST, true, "[item {$nItem}] Alíquota do imposto do ICMS ST");
                $this->dom->addChild($icmsSN, 'vICMSST', $vICMSST, true, "[item {$nItem}] Valor do ICMS ST");
                $this->dom->addChild($icmsSN, 'pCredSN', $pCredSN, true, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'vCredICMSSN', $vCredICMSSN, true, "[item {$nItem}] Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional)");
                break;
            case '202':
            case '203':
                $icmsSN = $this->dom->createElement("ICMSSN202");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                $this->dom->addChild($icmsSN, 'modBCST', $modBCST, true, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'pMVAST', $pMVAST, false, "[item {$nItem}] Percentual da margem de valor Adicionado do ICMS ST");
                $this->dom->addChild($icmsSN, 'pRedBCST', $pRedBCST, false, "[item {$nItem}] Percentual da Redução de BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'vBCST', $vBCST, true, "[item {$nItem}] Valor da BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'pICMSST', $pICMSST, true, "[item {$nItem}] Alíquota do imposto do ICMS ST");
                $this->dom->addChild($icmsSN, 'vICMSST', $vICMSST, true, "[item {$nItem}] Valor do ICMS ST");
                break;
            case '500':
                $icmsSN = $this->dom->createElement("ICMSSN500");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                $this->dom->addChild($icmsSN, 'vBCSTRet', $vBCSTRet, false, "[item {$nItem}] Valor da BC do ICMS ST retido");
                $this->dom->addChild($icmsSN, 'vICMSSTRet', $vICMSSTRet, false, "[item {$nItem}] Valor do ICMS ST retido");
                break;
            case '900':
                $icmsSN = $this->dom->createElement("ICMSSN900");
                $this->dom->addChild($icmsSN, 'orig', $orig, true, "[item {$nItem}] Origem da mercadoria");
                $this->dom->addChild($icmsSN, 'CSOSN', $csosn, true, "[item {$nItem}] Código de Situação da Operação Simples Nacional");
                $this->dom->addChild($icmsSN, 'modBC', $modBC, false, "[item {$nItem}] Modalidade de determinação da BC do ICMS");
                $this->dom->addChild($icmsSN, 'vBC', $vBC, false, "[item {$nItem}] Valor da BC do ICMS");
                $this->dom->addChild($icmsSN, 'pRedBC', $pRedBC, false, "[item {$nItem}] Percentual da Redução de BC");
                $this->dom->addChild($icmsSN, 'pICMS', $pICMS, false, "[item {$nItem}] Alíquota do imposto");
                $this->dom->addChild($icmsSN, 'vICMS', $vICMS, false, "[item {$nItem}] Valor do ICMS");
                $this->dom->addChild($icmsSN, 'modBCST', $modBCST, false, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'pMVAST', $pMVAST, false, "[item {$nItem}] Percentual da margem de valor Adicionado do ICMS ST");
                $this->dom->addChild($icmsSN, 'pRedBCST', $pRedBCST, false, "[item {$nItem}] Percentual da Redução de BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'vBCST', $vBCST, false, "[item {$nItem}] Valor da BC do ICMS ST");
                $this->dom->addChild($icmsSN, 'pICMSST', $pICMSST, false, "[item {$nItem}] Alíquota do imposto do ICMS ST");
                $this->dom->addChild($icmsSN, 'vICMSST', $vICMSST, false, "[item {$nItem}] Valor do ICMS ST");
                $this->dom->addChild($icmsSN, 'pCredSN', $pCredSN, false, "[item {$nItem}] Alíquota aplicável de cálculo do crédito (Simples Nacional).");
                $this->dom->addChild($icmsSN, 'vCredICMSSN', $vCredICMSSN, false, "[item {$nItem}] Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional)");
                break;
        }
        //caso exista a tag aICMS[$nItem] inserir nela caso contrario criar
        if (!empty($this->aICMS[$nItem])) {
            $tagIcms = $this->aICMS[$nItem];
        } else {
            $tagIcms = $this->dom->createElement('ICMS');
        }
        if (isset($icmsSN)) {
            $this->dom->appChild($tagIcms, $icmsSN, "Inserindo ICMSST em ICMS[{$nItem}]");
        }
        $this->aICMS[$nItem] = $tagIcms;
        return $tagIcms;
    }

Usage Example

Example #1
0
 /**
  * zLinhaNSNEntity
  * Cria a tag ICMSSN
  *
  * @param array $aCampos
  */
 protected function zLinhaNSNEntity($aCampos)
 {
     //Nsn|orig|csosn|modBC|vBC|pRedBC|pICMS|vICMS|pCredSN
     //   |vCredICMSSN|modBCST|pMVAST|pRedBCST|vBCST|pICMSST
     //   |vICMSST|vBCSTRet|vICMSSTRet|
     $this->make->tagICMSSN($this->nItem, $aCampos[1], $aCampos[2], $aCampos[3], $aCampos[4], $aCampos[5], $aCampos[6], $aCampos[7], $aCampos[8], $aCampos[9], $aCampos[10], $aCampos[11], $aCampos[12], $aCampos[13], $aCampos[14], $aCampos[15], $aCampos[16], $aCampos[17]);
 }
All Usage Examples Of NFePHP\NFe\MakeNFe::tagICMSSN