Ir para conteúdo
  • Cadastre-se

dev botao

Bloco X Estoque - Itens que vão


willmesquita
Ver Solução Respondido por EMBarbosa,
  • Este tópico foi criado há 1464 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Administradores

Boa tarde.

Pelo que me recordo, só ficam fora do arquivo de estoque os itens sem estoque.

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...

boa tarde, sim, segue o trecho do código:

          with ACBrBlocoX do
          begin
            CabecalhoBlocoX();

            // arquivo de Estoque
            with Estoque do
            begin
              //dataInicial := dataInicial;
              //dataFinal   := dataFinal;
              DataReferencia := dataFinal;

              Qaux := getQaux;
              Qaux.Close;
              Qaux.SQL.Text := '     select produto.procodigo,                               '+
                               '            produto.procodncm,                               '+
                               '            produto.pronome,                                 '+
                               '            produto.protipo,                                 '+
                               '            propreco.pprvalor,                               '+
                               '            classe.clasittrib,                               '+
                               '            coalesce(produto.proaliqicms,0) proaliqicms,     '+
                               '            produto.proiss,                                  '+
                               '            unidade.uninome,                                 '+
                               '            produto.proestoque                               '+
                               '       from produto                                          '+
                               ' inner join unidade                                          '+
                               '         on unidade.unicodigo = produto.unicodigo            '+
                               ' inner join classe                                           '+
                               '         on classe.clacodigo = produto.clacodigo             '+
                               ' inner join propreco                                         '+
                               '         on propreco.procodigo = produto.procodigo           '+
                               '        and propreco.precodigo = (select preco.precodigo     '+
                               '                                    from preco               '+
                               '                                   where preco.prepadrao = 1)'+
                               '      where produto.proestoque > 0                           '+
                               '   order by produto.procodigo                                ';
              Qaux.Open;

              Produtos.Clear;
              iRegistros:=0;
              while (not qAux.Eof) do
              begin
                with Produtos.Add do
                begin
                    Codigo.Tipo             := tpcProprio;
                    Codigo.CodigoProprio    := qAux.FieldByName('procodigo').AsString;
                    Codigo.CodigoNCMSH      := qAux.FieldByName('procodncm').AsString;
                    Descricao               := qAux.FieldByName('pronome').AsString;
                    ValorUnitario           := qAux.FieldByName('pprvalor').AsFloat;
                    Ippt                    := ipptTerceiros;

                    if (qAux.FieldByName('uninome').AsString = 'F') then
                      SituacaoTributaria      := stSubstTributaria
                    else if (qAux.FieldByName('uninome').AsString = 'I') then
                      SituacaoTributaria      := stTributado
                    else if (qAux.FieldByName('uninome').AsString = 'N') then
                      SituacaoTributaria      := stNaoTributado
                    else if (qAux.FieldByName('uninome').AsString = 'N') then
                      if (qAux.FieldByName('protipo').AsInteger = 2) then
                        begin
                            SituacaoTributaria := stISSQN;
                            Aliquota           := qAux.FieldByName('proiss').AsFloat;
                        end
                      else
                        SituacaoTributaria      := stTributado;
                    Unidade                 := qAux.FieldByName('uninome').AsString;
                    Quantidade              := qAux.FieldByName('proestoque').AsFloat;
                    IndicadorArredondamento := False;
                end;
                iRegistros := iRegistros+1;
                qAux.Next;
              end;
              SaveToFile(sNomeArqXML);
            end;
          end;
 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Fiz um teste e gerou com 10k de registros. mas é claro não tenho certificado para assinar o arquivo.

tu consegue fazer a geração e no deploy tu pular a assinatura? basta ao chamar o evento

procedure TACBrBlocoX_Estoque.SaveToFile(

nele tem um outro método

GerarXML(AAssinar);

em debug altere o AAssinar para False veja se gera

  • Curtir 1
Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
22 minutos atrás, Djean Carlos Duarte disse:

Boa tarde Juliomar, 

Fiz o teste que solicitastes e apresentou "Out of memory" mesmo com AAssinar = false. Alguma outra luz ou teste que eu possa fazer? Obs.: acontece tanto em homologação como em produção.

Então seu problema é ai, pois pelo seguinte, eu fiz o teste com 10 mil itens no XML, claro que com o exemplo e foi.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
  • Consultores
Em 17/03/2020 at 13:33, Djean Carlos Duarte disse:

boa tarde, sim, segue o trecho do código:

Quantos itens são? Qual a versão do seu Delphi? Testou com o aplicativo de exemplo?

[]'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 para o comentário
Compartilhar em outros sites

  • Consultores
2 minutos atrás, Djean Carlos Duarte disse:

bom dia, 

se trata do Delphi 7. São 2800 itens aproximadamente.

Você usa o FastMM? Se sim, qual versão?

[]'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 para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution
3 horas atrás, Djean Carlos Duarte disse:

Sim, foi usado o FastMM, o Juliomar me auxiliou, mas não obtivemos sucesso.

A versão eu não saberia informar.

Nesse caso deve ser a versão mais atual. O que limita então a ter que procurar o que realmente está causando o "Out of memory".

Talvez uma fragmentação da memória. Mas daí já complica...

  • Curtir 1

[]'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 para o comentário
Compartilhar em outros sites

19 horas atrás, EMBarbosa disse:

Nesse caso deve ser a versão mais atual. O que limita então a ter que procurar o que realmente está causando o "Out of memory".

Talvez uma fragmentação da memória. Mas daí já complica...

Bom dia, 

Resolvi da seguinte forma por sugestão do Juliomar, criei uma VM com Windows 10 e o Delphi 10.3.2 Rio, recompilei o PAF e consegui gerar o arquivo normalmente.

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Só complementar, é algo do compilador do Delphi 7. ele tem limitações. e daqui uns dias nem o executável vai funcionar mais nas próximas atualizações ou versões do windows

  • Curtir 1
Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1464 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.

The popup will be closed in 10 segundos...