Jump to content

dev botao

EXEMPLO ACBR PIS COFINS


nando40rj
  • Este tópico foi criado há 4424 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Tenho certeza que minha dúvida é simples, mas empaquei ao estudar o exemplo do acbr pis/cofins em uma questão ..

logo no bloco 0 , a rotina abaixo mostra a passagem dos parametros de forma bem clara ...

with ACBrSPEDPisCofins1.Bloco_0 do

begin

// Dados da Empresa

with Registro0000New do

begin

NUM_REC_ANTERIOR := '';

NOME := 'NOME DA EMPRESA';

CNPJ := '11111111000191';

UF := 'ES';

.

.

.

mas quando chega em

IND_NAT_PJ := indNatPJSocEmpresariaGeral;

IND_ATIV := indAtivIndustrial;

pergunto : o que é por exemplo indNatPJSocEmpresariaGeral?

é uma variável? é uma constante ? é uma passagem de parametro para uma dll ?

O que preciso saber : ex : quero dizer que indAtivIndustrial = codigo 0

Como digo isso nesse trecho ? como passo que IND_NAT_PJ = 0 por exemplo ?

Grato desde já por qualquer contribuição.

Link to comment
Share on other sites

  • Consultores

É um tipo enumerado definido na unit ACBrECDBlocos.pas

Não precisa muita coisa pra descobrir os valores dos tipos, só ler o guia prático.

Por exemplo indNatPJSocEmpresariaGeral, seria qual nas opções abaixo?

Indicador da natureza da pessoa jurídica:

00 – Pessoa jurídica em geral

01 – Sociedade cooperativa

02 – Entidade sujeita ao PIS/Pasep exclusivamente

com base na Folha de Salários

Se apertar Ctrl+Barra de Espaços no Delphi/Lazarus, costuma aparecer quais valores você pode usar. Mas se quiser ir mais a fundo, é só procurar o campo e ver qual foi o tipo utilizado na definição da propriedade, e daí, procurar no ACBrECDBlocos.pas o tipo correspondente.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

obrigado pela resposta, mas na verdade a questão não é essa.

|Eu tenho um combobox onde ele seta as opções.

Ex: ele setoua a Opção A e o Value dela = 0.

A questão :

Onde no código diz :

IND NAT = indNatPJSocEmpresariaGeral

Como eu digo a ele nesse ponto que eu quero o IND NAT = 0 ( opção marcada pelo usuario )

IND NAT = 0 ?

IND NAT = indNatPJSocEmpresariaGeral [0]

Como eu falo com ele isso ??

grato

Link to comment
Share on other sites

Infelizmente ainda não é isso ...

Se faço IND_NAT_PJ := TACBrIndicadorNaturezaPJ(0);

ou

IND_NAT_PJ := TACBrIndicadorNaturezaPJ(ComboBox.ItemIndex);

Ele não compila e dá SpedPisCofins.pas Mission Operator or Semicolon;

Mas se faço sem envio de parametro nenhum :

IND_NAT_PJ := TACBrIndicadorNaturezaPJ;

ele compila normalmente.

Link to comment
Share on other sites

  • Consultores

Faça um case com o retorno do combobox escolhido pelo usuário e passe para o componente o valor enumerado de acordo.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

bom , ainda não é a resposta que preciso mas agradeço.

Vou tentar exemplificar de outra forma.

No componente SpedPisCofins :

IND_NAT_PJ := TACBrIndicadorNaturezaPJ;

como eu digo por exemplo neste ponto que

IND_NAT_PJ := 1 ? (OU SEJA IND_NAT_PJ IGUAL A 1 )

Em tempo : IND_NAT_PJ := TACBrIndicadorNaturezaPJ (1) NAO COMPILA.

Eu só preciso que me mandem a SINTAXE. Sem conceitos, os conceitos eu conheço ...

Só a SINTAXE porque já tentei de tudo e isso NAO COMPILA de forma alguma .

grato.

Link to comment
Share on other sites

  • 4 weeks later...

Bom dia nando, gostaria de saber se já solucionou sua dúvida pois passei pelo mesmo problema. Achei uma solução, porém, não acho que seja a mais coerente, embora tenha me feito concluir o projeto.

Desde já agradeço a colaboração.

Link to comment
Share on other sites

  • 4 weeks later...

Estou com o mesmo problema eu tenho um TDBcombobox, com items:

00 - Sociedade Empresária em Geral

01 - Sociedade Cooperativa

02 - Entidade sujeita ao PIS / Pasep exclusivamente com base na folha de Salários

Quero saber como posso colocar para quando selecionar o combo (exemplo se selecionar o item 02) como posso chamar isso, pois fiz dessa manira e está dando errado:

IND_NAT_PJ := Strtoint(Cb_IndicadorPessoaJ.Text);

Link to comment
Share on other sites

Utilizem um case , vejam :

case (combobox1.itemindex) of

0 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

1 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

2 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

end ;

-------------------------------------------------------------------------------------------

outra opcao , crie uma variavel integer , vejam :

Codigo := strtoint(copy(combobox1.text , 1 ,2 )) ; // pego apenas as duas primeiras posicoes e transformo em um codigo de controle , lembrando que tem que haver sincronismo com as informações declaradas ao componente .

case Codigo of

0 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

1 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

2 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

end ;

boa sorte a todos .

Link to comment
Share on other sites

  • 3 weeks later...

Agradeço pela informação, fico muito grata, por ter colegas como você que possa ajudar.

Um forte abraço.

Desculpa por não ter respondido antes, pois sabemos que trabalhamos com prazos.

Utilizem um case , vejam :

case (combobox1.itemindex) of

0 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

1 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

2 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

end ;

-------------------------------------------------------------------------------------------

outra opcao , crie uma variavel integer , vejam :

Codigo := strtoint(copy(combobox1.text , 1 ,2 )) ; // pego apenas as duas primeiras posicoes e transformo em um codigo de controle , lembrando que tem que haver sincronismo com as informações declaradas ao componente .

case Codigo of

0 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

1 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

2 : IND_NAT_PJ := TACBrIndicadorNaturezaPJ; // indique a opcao desejada

end ;

boa sorte a todos .

Link to comment
Share on other sites

  • Este tópico foi criado há 4424 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.