Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

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.

  • Consultores
Postado

É 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.
Postado

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

Postado

Infelizmente ainda não é isso ...

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

ou

IND_NAT_PJ := TACBrIndicadorNaturezaPJ(ComboBox.ItemIndex);

Postado

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.

  • Consultores
Postado

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.
Postado

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.

  • 4 semanas depois ...
Postado

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.

  • 4 semanas depois ...
Postado

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);

Postado

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 .

  • 3 semanas depois ...
Postado

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 .

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.