Duplicando registro tabela NAST após chamada J_1BNFE_CALL_RSNAST00

Boa tarde pessoal,
estava conversando com o Fernando nesta [Thread|; e resolvi abrir uma nova thread.
Estava implementando a badi de impressão do danfe e notei um comportamento estranho.
Após gerar uma NFe, é gerado um registro na NAST.
Na sequencia, executo o FM J_1B_NFE_XML_IN para simular o aceite desta NFe, o que acarreta na chamada da badi de impressão e na minha badi tenho a chamada p/ o FM J_1BNFE_CALL_RSNAST00.
Dentro deste FM, ele move alguns parâmetros de entrada para a NAST e chama o form einzelnachricht, que chama tnaprlesen_, optischearchivierung_, programmaufrufen_, protocolstore_ e finalmente o nastupdate_.
Neste ponto do programa, a chave que tenho no header da tabela NAST é diferente da que já consta na tabela do bd.
No BD tenho este registro na NAST:
MANDT     321
KAPPL     NF
OBJKY     0003347752
KSCHL     ZNFE
SPRAS     E
PARNR                                                                               
PARVW                                                                               
ERDAT     06/24/2009
ERUHR     14:38:41
e no programa, no form nastupdate_, tenho o header da NAST assim:
MANDT
KAPPL     NF
OBJKY     0003347752
KSCHL     ZNFE
SPRAS     
PARNR     
PARVW     
ERDAT     00000000
ERUHR     000000
Sendo assim, quando ele dá o update nast. ele dá sy-subrc = 4, e na sequencia, o código trata if sy-subrc ne 0, insert nast. Com isso tenho 2 registros na NAST pra mesma NF, um com o status VSTAT = 1, mas com o SPRAS/ERDAT/ERUHR não preenchidos e o outro, o "original", com tudo preenchido porém com o status VSTAT = 0.
Olhando o Spool na SP01 eu vejo a NFe "impressa" apenas uma vez, o que está correto. Mas o que me incomoda é que ele acaba gerando registros duplicados.
Segue meu código da BADI:
  IF  i_active-code EQ '100'         "NF-e autorizada
  AND i_active-printd IS INITIAL     "só imprimir automaticamente se ainda não foi impressa
  AND i_active-cancel IS INITIAL     "não faz sentido imprimir autom. se ela foi cancelada
  AND i_active-conting_s IS INITIAL. "não faz sentido imprimir autom. se ela foi alternada
                                     "p/conting. pois deverá ser cancelada
    CALL FUNCTION 'J_1BNFE_CALL_RSNAST00'
    EXPORTING
      I_ACTIVE = i_active
      I_DIMME  = 'X'
      I_PRINTER = vl_printer
    EXCEPTIONS
      no_printer = 1
      others = 2.
    COMMIT WORK.
    IF sy-subrc = 0.
      CALL FUNCTION 'J_1B_NFE_ERROR_PROTOKOLL'
      EXPORTING
        i_docnum = i_active-docnum.
    ENDIF.
  ENDIF.
Para "resolver" esse pequeno problema (ao meu ver, não sei se está correto ou não este comportamento), criei um FM Z com o seguinte código:
FUNCTION ZBR_J_1BNFE_CALL_RSNAST00.
""Local Interface:
*"  IMPORTING
*"     VALUE(I_ACTIVE) TYPE  J_1BNFE_ACTIVE
*"     VALUE(I_KAPPL) TYPE  NAST-KAPPL DEFAULT 'NF'
*"     VALUE(I_NACHA) TYPE  NAST-NACHA DEFAULT '1'
*"     VALUE(I_DIMME) TYPE  NAST-DIMME DEFAULT 'X'
*"     VALUE(I_PRINTER) TYPE  RSPONAME OPTIONAL
*"  EXCEPTIONS
*"      PRINT_ERROR
TABLES: nast.
SELECT SINGLE *
    FROM nast
   WHERE kappl = i_kappl AND
         objky = i_active-docnum AND
         kschl = i_active-form AND
         nacha = i_nacha AND
         vstat = '0'.
start printing
  nast-kappl = i_kappl.
  nast-objky = i_active-docnum.
  nast-kschl = i_active-form.
  nast-nacha = i_nacha.          "1 = print output
  "nast-ldest = i_printer.
  "nast-dimme = i_dimme.          "X = print immidiately
  PERFORM einzelnachricht IN PROGRAM rsnast00 USING sy-subrc.
  IF NOT sy-subrc IS INITIAL.
    MESSAGE i230(8b) with i_active-docnum RAISING print_error. "#EC *
  ENDIF.
ENDFUNCTION.
e na BADI, o chamei desta forma:
CALL FUNCTION 'ZBR_J_1BNFE_CALL_RSNAST00'
    IN BACKGROUND TASK
    EXPORTING
      i_active = i_active
    EXCEPTIONS
      no_printer = 1
      others = 2.
Desta maneira, não ocorreu a duplicação dos registros da NAST e a nota também foi impressa OK.
A minha dúvida é se realmente o comportamento esperado utilizando o primeiro procedimento é duplicar o registro na NAST ou se pode ser que tenha algo errado no meu sistema(SAP_APPL 602 SP01) na hora da chamada da RSNAST00.

parte 1
Boa tarde pessoal,
estava conversando com o Fernando nesta [Thread|; e resolvi abrir uma nova thread.
Estava implementando a badi de impressão do danfe e notei um comportamento estranho.
Após gerar uma NFe, é gerado um registro na NAST.
Na sequencia, executo o FM J_1B_NFE_XML_IN para simular o aceite desta NFe, o que acarreta na chamada da badi de impressão e na minha badi tenho a chamada p/ o FM J_1BNFE_CALL_RSNAST00.
Dentro deste FM, ele move alguns parâmetros de entrada para a NAST e chama o form einzelnachricht, que chama tnapr_lesen, optische_archivierung, programm_aufrufen, protocol_store e finalmente o nast_update.
Neste ponto do programa, a chave que tenho no header da tabela NAST é diferente da que já consta na tabela do bd.
No BD tenho este registro na NAST:
MANDT     321
KAPPL     NF
OBJKY     0003347752
KSCHL     ZNFE
SPRAS     E
PARNR                                                                               
PARVW                                                                               
ERDAT     06/24/2009
ERUHR     14:38:41
e no programa, no form nastupdate_, tenho o header da NAST assim:
MANDT
KAPPL     NF
OBJKY     0003347752
KSCHL     ZNFE
SPRAS     
PARNR     
PARVW     
ERDAT     00000000
ERUHR     000000
Sendo assim, quando ele dá o update nast. ele dá sy-subrc = 4, e na sequencia, o código trata if sy-subrc ne 0, insert nast. Com isso tenho 2 registros na NAST pra mesma NF, um com o status VSTAT = 1, mas com o SPRAS/ERDAT/ERUHR não preenchidos e o outro, o "original", com tudo preenchido porém com o status VSTAT = 0.
Olhando o Spool na SP01 eu vejo a NFe "impressa" apenas uma vez, o que está correto. Mas o que me incomoda é que ele acaba gerando registros duplicados.
continua
Edited by: Jose Nunes on Jun 24, 2009 5:00 PM
Edited by: Jose Nunes on Jun 24, 2009 5:01 PM

Similar Messages

  • Nota Fiscal não imprime na J1B3n

    Bom dia,
    Criei um novo formulário para minhas notas de importação. As mesmas já estão sendo autorizadas pela Sefaz através do GRC porém não consigo fazer a impressão. Uma coisa que percebi é que não estão sendo gravados registros na NAST (somente p/ esse formulário).
    Segue as configurações que já fiz:
    1. Criei um novo tipo de mensagem: NF03
    SPRO / Componentes válidos para várias aplicações / Funções gerais de aplicação / Nota Fiscal / Determinação de Saída / Tipos de Condição
    2. Criei um novo formulário: NF03
    SPRO / Componentes válidos para várias aplicações / Funções gerais de aplicação / Nota Fiscal / Saída / Definir formulários
    3. Atribuir categoria de nota fiscal à formulário (ctg. YS -> NF03)
    SPRO / Componentes válidos para várias aplicações / Funções gerais de aplicação / Nota Fiscal / Definir tipos de Nota fiscal
    4. Configuração na J1BG para a mensagem NF03.
    Mesmo após esses passos continua não imprimindo. Alguém saberia me dizer se está faltando algum passo?
    Att.

    Edson,
    Você atribuiu o novo tipo de mensagem a um esquema de mensagens?
    SPRO / Componentes válidos para várias aplicações / Funções gerais de aplicação / Nota Fiscal / Determinação de Saída / Esquema de mensagens
    A NF que você está gerando está sendo atribuida ao formulário NF03?
    Geraldo

  • Output @ Item level

    Hi,
        Output in delivery at header level will be stored in NAST table.
    To check in Spool we can use SP01.
    To reprint the deliveries at item level we use VL71.
    In which table delivery output at item level will be stored?
    How can v find out?
    early responses will be awarded,
    Thank you  all for ;your support so far and I hope this will continue in all our Journey in this mode of transport i.e. ( SAP)

    Hi RMD,
    NO data will be stored in the table if you are maintaining the Output but it will be get
    updated in the Header table LIKP( Delivery Header ) or LIPS ( Delivery Item).
    And for your information Tabel NAST - Message Status.
    here you find the Spool Numbers etc.,
    Please this is clear and Please Reward If Really Helpful,
    Thanks and Regards,
    Sateesh.Kandula

  • Goods Receipt for Handling Unit using RF

    Hello,
    The customer requirement is to do Goods Receipt for HU in RF. In RF the standard transaction is LM76 for GR for HU.
    The scenario is Multiple handling units are there for each inbound delivery. the client wants to do GR for each HU. where as in
    standard TC: LM76, if one HU is entered GR is done for the entire inbound delivery.
    Can i go for customized transaction (is it possible to develop) in RF where GR is done for each handling unit ( i.e. multiple HU's
    are there in the inbound delivery)
    Regards,
    Neetha

    Hi,
    I've done something similar on RF for a retailer in Holland and used enhancement MWMRFDLV/INCLUDE ZXLHUU31.
    I've added an example of the code that is implemented.
    This enhancement is called by transaction LM61 op to LM66 en LM71 up to LM76.
    Transaction LM76 is initially intended to select the delivery by scanning the HU.
    What I did is reducing the information on the sceen to the HU that has been scanned
    Secondly yo need to assure that when the user is creating a TO or posting the GR it is performed for the HU only.
    For this you need to do additional development mwmrf631 (= Delivery Header / in the PAI define your own logic that post the GR for a single HU) What I used is an outputtype in application V6 (HU) that is triggerred from include ZXLHUU21 and will post the GR with BAPI_GOODSMVT_CREATE'  . See 2nd example include ZXLHuu21
    I hope my comment are usefull for you.
    Kind regards
    Ronald
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    INCLUDE ZXLHUU31
    case sy-tcode.
      WHEN con_lm76.
    inperken OP HU als de levering meerdere Handling Units heeft
    alleen dan inperken op HU informatie
        LOOP AT et_postab WHERE posnr = '000000'.
          SELECT SINGLE anzpk FROM likp INTO et_postab-anzpk
                              WHERE vbeln = et_postab-vbeln.
          MODIFY et_postab.
          IF et_postab-anzpk > 1.
            EXIT.
          ENDIF.
        ENDLOOP.
        CHECK et_postab-anzpk > 1.
        GET PARAMETER ID 'INP_100' FIELD inp_100.
        i_exidv = inp_100.
        IF i_exidv NA sy-abcde.
          et_postab-exidv = i_exidv.
          et_postab-anzpk = 1.
          LOOP AT et_postab WHERE posnr <> '000000'.
            SELECT SINGLE aexidv abrgew b~vemng
                           INTO (et_postab-exidv, et_postab-brgew, et_postab-lfimg)
                                  FROM vekp AS a INNER JOIN vepo AS b
                                  ON avenum = bvenum
                                  WHERE a~exidv    = i_exidv
                                    AND bvenum    = avenum
                                    AND b~vbeln    = et_postab-vbeln
                                    AND b~posnr    = et_postab-posnr.
            MODIFY et_postab.
          ENDLOOP.
          et_postab-anzpk = 1.
          MODIFY et_postab TRANSPORTING exidv brgew anzpk WHERE posnr = '000000'.
          DELETE et_postab WHERE exidv IS INITIAL.
          SORT et_postab BY posnr.
        ENDIF.
    ENDCASE.
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    EXIT_SAPLLMOB_084    INCLUDE ZXLHUU21 .
    *&  Include           ZXLHUU21                                         *
    Initial development by Perfect for People - Ronald Westdijk
    o_current_field         = current_field.
    o_verification_errors[] = verification_errors[].
    SET PARAMETER ID 'BYDLVRY' FIELD LIKP-VBELN.
    CASE sy-tcode.
      WHEN con_lm76.
        CASE sy-ucomm.
          WHEN fcode_save.
    melding alleen geven als meerdere Handling Units bestaan
    en als deze nog moeten worden geboekt.
            SELECT SINGLE anzpk FROM likp INTO i_anzpk
                                WHERE vbeln = likp-vbeln.
            CHECK i_anzpk > '1'.
    check output messages in tabel NAST of deze nog moet worden geboekt.
    melding alleen geven als er nog meerdere HU open staan.
    eerst de HU's ophalen
    daarna de nast records inlezen in i_nast (output ZMCR) en checken
            REFRESH i_nast.
            CLEAR vbco3.
            vbco3-vbeln = likp-vbeln.
            CALL FUNCTION 'SD_PACKING_PRINT_VIEW'
              EXPORTING
                comwa                         = vbco3
                auftrag_nicht_lesen           = 'X'
                exportdaten_nicht_lesen       = 'X'
              TABLES
                vbplk_tab                     = xvbplk
                vbplp_tab                     = xvbplp
                vbpls_tab                     = xvbpls.
            LOOP AT xvbplk.
              SELECT SINGLE * FROM nast INTO i_nast
                              WHERE vstat = '0'
                                AND kappl = 'V6'
                                AND objky = xvbplk-venum
                                AND kschl = 'ZMCR'.
              IF sy-subrc = 0.
                APPEND i_nast.
              ENDIF.
            ENDLOOP.
            DESCRIBE TABLE i_nast LINES n.
            CHECK n > 1.
    message lf317 Het systeem zal de boeking uitvoeren, verder?
            sy-msgid = 'LF'.
            sy-msgno = '317'.
            PERFORM warning_message(rlmob001).
            GET PARAMETER ID 'POX' FIELD msg_answ.
            SET PARAMETER ID 'POX' FIELD ''.
            CASE msg_answ.
              WHEN ver_on.
    output ZMCR after HU to post Goods receipt is executed.
                REFRESH bapihukey.
                bapihukey-hu_exid = i_exidv.
                APPEND bapihukey.
                REFRESH bapioutptype.
                bapioutptype-trans_medium = '8'.
                bapioutptype-output_type  = 'ZMCR'.
                APPEND bapioutptype.
                CALL FUNCTION 'BAPI_HU_PROCESS_MSG_DIRECT'
                  TABLES
                    hukey      = bapihukey
                    outputtype = bapioutptype
                    return     = bapiret2.
                LEAVE TO TRANSACTION con_lm01.
            ENDCASE.
        ENDCASE.
    ENDCASE.

  • Repeat Output on Orders etc.

    Hi,
    I want to write a program that takes some inpara and repeat it's output....like this
    Nr..............      (could be salesnr, purchrn,billingnr et.c)
    OutPut ......   (Which output to repeat. Ex ZBOO -->OrderConfi,  ZINVnvoice
    REPEAT OUTPUT BUTTON.
    Is there a report for this out there ?
    Regards
    Martin
    Message was edited by:
            Martin Andersson

    Hi,
    Let me explain a little more....
    For example ZB00, which is OrderConfirmation.
    To repeat ZB00 output on excisting order, I have to enter
    VA02 --Extras --Output HeaderEdit.
    Then I will have to mark the output and click the REPEAT BUTTON..
    The output goes away when I SAVE!
    It's simular action for Delivery, Billing etc..
    This is very timeconsuming and  I would like to speed up this process.
    I belive that tabel NAST is central here !
    So making a report that updates NAST or whatever should be perfect...
    //Martin

  • Migração de taxa de imposto para registro de condição - Erro em pacote de tabela

    Prezados, boa noite!
    Gostaria de uma ajuda dos colegas consultores em um problema que estou enfrentando em uma implantação. Segue abaixo um descritivo do problema.
    Estamos realizando a implantação da TAXBRA - CBT com base na nota 1706309 e suas referências. A nota foi implantada conforme descrita, utilizando os BC-Sets disponibilizados. Após a instalação e em seguida a execução dos passos manuais, o sistema não apresentou o resultado esperado. Verificamos a configuração, dessa vez manualmente, utilizando as notas de referência, porém ainda estamos enfrentando problemas.
    Ao executar a rotina de migração de taxas de impostos para as tabelas, o sistema está exibindo a mensagem 8B337. Essa mensagem pede a verificação do pacote de tabelas, no caso da A003 (J_1BTAXCODEV) e A121 (J_1BTXIS1).
    Li em um outro thread que a SAP disponibilizou alguns passos manuais, já que algumas notas que deveriam tratar desse problema ainda não haviam sido liberadas.
    Alguém por acaso já passou por situação semelhante? Já pedi para o time de Basis do meu projeto verificar o pacote dessas tabelas, e eles dizem que estão todos ok.
    Desde já agradeço pela ajuda e tempo de todos.
    Abs,
    Raphael Otsuka

    Bom dia, finalmente abri um chamado na SAP. Esta ñe a resposta que recibí, aplicamos e deu certo.
    Copio a solucao aqui casso que alguem tenha o mesmo problema.
    Slds,
    In this case is that table A003 and A601
    are not assigned to Package J1BA in transaction SE11. Please open
    these tables in SE11 and go to the Attributes tab. You will see that
    they are assigned to package VKON. The coding below looks for the
    Localization Brazil package when working with these tables:
    Main Program     J_1B_MIGRATE_TAX_RATES
    Source code of   J_1B_MIGRATE_TAX_RATES_CL1
       cl_abap_dyn_prg=>check_table_name_str(                "1810395
         val = m_cond_table                                  "1810395
         packages = 'J1BA' ).                                "1810395
       CATCH cx_abap_not_a_table                             "1810395
             cx_abap_not_in_package.                         "1810395
         MESSAGE w337(8b) WITH m_cond_table.                 "1810395
    ENDTRY.                                                 "1810395
    This has been introduced by note 1810395 due to a security flaw found
    in the system.
    Please ensure that all Conditions Tables assigned to the Tax Tables
    are included in package J1BA as for example it is with table
    A349. Like this, this issue should be resolved and you will be able to
    continue running the migration in your system

  • NAST: Entradas duplicadas para o mesmo DOCNUM (SCAN)

    Olá pessoal,
    Recentemente configuramos e ativamos o SCAN em produção e atualmente estamos utilizando o SCAN para a emissão de NFs da filial em PE com sucesso. A impressão/reimpressão do DANFE é feita através de uma transação Z que faz um call transaction na J1B3N para as notas selecionadas.
    Temos configurado no ECC três formulários para nota de saída: NF55, NF57 e NFSC (SCAN).
    Quando a nota é emitida utilizando SCAN, a NAST fica com três entradas para o mesmo DOCNUM, com KSCHL = NF55 / NF57 / NFSC, fazendo com que o programa de impressão seja acessado 3 vezes e gerando 3 spools. Para a filial de SP, por exemplo, que está emitido no modo normal, apenas uma entrada (KSCHL = NF57) é criada na NAST.
    Revisamos a transação Z, o programa de impressão e o Smartform para certificar que não havia nenhum tratamento distinto por tipo de mensagem / formulário e não encontramos nada. Desconfio que alguma configuração de Saída ou mesmo do Form NFSC (do SCAN) esteja errada mas não conseguimos encontrar o que seja.
    As configurações foram feitas de acordo com o arquivo SCAN_SAP_Library.pdf da OSS Note 1394582 - NF-e: SCAN - ERP part.
    Desde já agradeço,
    Daniela

    Oi Daniela, td bem?
    Uma dúvida... FORM da NF e KSCHL da NAST sao: formulário e tipo de mensagem respectivamente. Vc tem os mesmos códigos (NF55, NF57 e NFSC) para estas duas configurações ou houve algum equivoco na digitacao?
    Se nao houve equivoco, vale uma revisada nos registros de condicao para as mensagens de NF neste local de negocios. Vc pode fazer isso pela transacao NACO ou consultando diretamente a tabela NACH, filtrando a aplicacao "NF".
    Pode ser que o formulario NFSC tenha registros para chamar as 3 mensagens que vc mencionou ou as sequencias de acesso estejam muito "genéricas".
    Att,

  • SPED PisCofins - Registro 0200 - Descrição do material e NCM em branco

    Olá Pessoal,
    Na geração do arquivo pela J1BPIS, no registro 0200, campo 03 (descrição do item) e 08 (Código NCM) está ocorrendo que o mesmo é preenchido até certo ponto do arquivo, depois aparecem uns 50 registros com estes campos em branco e na sequência voltar a preencher os dados.
    Pecebi que a variável (uv_maktx) que deveria ter o dados é do tipo j_1bnflin-maktx, verifiquei na tabela de itens e as descrições estão todas lá.
    Alguém já passou por esta situação? Será que seria melhor usar a Badi FILL_REGISTER_0200 para preencher os mesmos ou teria alguma nota disponível.
    Estamos no enahncement 14.
    Obrigado,
    Ariel
    Edited by: ArielRCosta on Feb 16, 2012 8:07 PM
    Edited by: ArielRCosta on Feb 16, 2012 8:36 PM
    Edited by: ArielRCosta on Feb 16, 2012 8:43 PM

    Edson, boa tarde!
    Estou nesse exato momento testando esse problema. Abri um chamado na SAP e eles já estão cientes.
    Te mantendo informado.
    João Henrique

  • RFC - Receber chamada do R/3 ao gravar VENDA

    Caros,
    Sou novato nas tecnologias SAP e estou em um projeto para desenvolvimento da integração "Payment Card Interface to R/3".
    Estamos desenvolvendo com o SAP Java Connector 3 e a princípio já tenho o meu JCOServer executando e conectado no sistema de testes (acessando a transação SM59 e testando a conexão TCP/IP, com nome de programa registrado).
    Pois bem, conforme a documentação da integração, entende-se que ao gravar uma Ordem de Venda (VA01) o sistema R/3 disparará uma chamada para o meu RFC Server fornecendo as tabelas de autorização CCAUT. Pelo que consta na também na documentação, esse chamada se dá através da execução da função SD_CCARD_AUTH_CALL_RFC.
    Então, fiz alguns testes e gravei algumas ordens, porém não obtive nenhuma atividade no meu handler que aguarda uma execução do R/3.
    Gostaria de saber se:
    - Preciso fazer alguma configuração no R/3 para que "chame" pelo nome do meu programa ? (A única configuração que fiz no SAP foi em SM59)
    - Preciso fazer alguma alteração específica para execução da função SD_CCARD_AUTH_CALL_RFC ? Se sim, qual ?
    - O sistema já tem o comportamento padrão de executar esta função ao gravar uma ordem de venda ?
    - Existe alguma forma de identificar se o R/3 está tentando "chamar" o meu RFC Server ?
    Qualquer ajuda que puderem me enviar será bem vinda...
    Cumprimentos,
    Rodrigo F. Santana

    Olá Arthur,
    Então, pelo que estou lendo tenho que acessar a seguinte opção:
    In Customizing for Sales and Distribution, choose Billing ® Payment cards ® Authorization and settlement® Maintain clearing house ® Set authorization/settlement control per account "
    Estou retirando essa informação do link abaixo:
    Payment Card Interface to Clearing Houses - Payment Card Processing (SD-BIL-IV) - SAP Library
    Porém, ao acessar o menu Vendas e Distribuição >> Faturamento, não existe a opção de Cartões de Pagamento.
    Você saberia me dizer onde tenho que acessar no sistema para entrar nessa opções de Customizing ?
    Grato pela ajuda.

  • ECD: Registro I051:Plano de contas referencial

    Após aplicação de Nota Enhancement 3, há apenas uma saída de BADI para o cliente tratar o plano referencial. É isso mesmo? A SAP não iria fornecer alguma solução para realizar o cadastramento do plano de contas referencial com a possibilidade de fazer o relacionamento do De-Para?

    Olá Cecilia.
    Por enquanto não existe nenhuma previsão por parte da SAP em fornecer uma implementação para este registro.
    A idéia é que o cliente crie sua própria tabela de-para juntamente com a implementação da respectiva BADI para inserir no arquivo ECD o plano de contas referencial.
    Abraço.
    Gustavo.

  • Campo de usuário em tabela de usuário não respeita o tamanho definido

    Criei uma tabela de usuário e dentro dela criei 10 campos alfanuméricos com tamanho de 10 posições. Ao executar a procedure SP_HELP no SQL Server para verificar o tamanho dos campos na estrutura da tabela verifiquei que o tamanho foi definido como -1, ou seja, o tamanho do campo não foi corretamente informado pelo B1 na criação da tabela e o SQL Server 2005 acabou por assumir como padrão o tamanho máximo de 4096 bytes.
    Se olharmos apenas para a definição da tabela e dos campos no B1 os valores são apresentados corretamente, mas não correspondem aos valores definidos nos metadados do banco. Isso é extremamente problemático pois derruba violentamente a performance das consultas nas tabelas de usuário.
    Existe algum workaround que a gente pode utilizar para resolver este problema?
    Testamos a criação de tabelas e campos de usuários na versão 2005B, rodando no SQL Server 2005 com as PLs 40, 41 e 42 e nessas três configurações o problema ocorreu sempre da mesma forma, como descrito acima.
    Sei que podemos forçar a correção da estrutura de dados das tabelas na mão, pelo comando ALTER TABLE do SQL Server, mas isso será apontado pelo Early Watch? Corremos o risco de perder a garantia do produto?
    Qualquer informação que ajudar a solucionar este problema será muito bem aceita.
    []'s
    Edited by: Rui Pereira on Nov 7, 2008 9:27 AM

    Oi Vitor,
    O problema ainda não foi resolvido. Abrimos um chamado na SAP pois entendemos que este comportamento do SBO não é o correto uma vez que ao definir campos alfanuméricos com o maior tamanho possível, as estruturas (metadados) acabam ficando gigantes e isso joga a performance dos add-ons e consultas formatadas pra baixo.
    Você pode reproduzir o problema criando UDFs em tabelas standard ou em UDTs pelo próprio B1. Não precisa criar os campos pelo SDK para que o problema ocorra não. Basta definir o campo do tipo Alfanumérico que, ao executar a SP_HELP no SQL Server você verá a estrutura do seu campo mais ou menos assim:
    CAMPO NVARCHAR(-1)
    Na documentação do SQL Server é explicado que o -1 representa a capacidade máxima de armazenamento do campo.
    Este problema só acontece no SQL Server 2005. No SQL Server 2000 o B1 se comporta bem.
    Edited by: Gabriel Izar on Oct 8, 2008 3:31 PM

  • DTW - oBusinessPartner tabela FederalTaxID

    Boa tarde grupo,
    Alguém pode me ajudar ?
    Eu fiz a migração de dados de CNPJ e IE do de Clientes no Cadastro de Parceiro de Negócio pelo DTW, porém eu verifico que ele importa normalmente, porém há um problema.
    Se eu for no campo endereço verifico o Endereço de Entrega, os dados de CNPJ e IE aparecem normalmente, agora na guia Contabilidade/Imposto Ident. Fiscais os dados não estão aparecendo e o SAP utiliza o mesmo FORM 82006.
    Quando eu marco a opção Definir como Padrão o endereço de Entrega em Endereços, o SAP atualiza.
    Existe alguma forma de eu fazer essa atualização de uma forma automática marcando como padrão o endereço, atualizando o campo das tabelas ou é um erro no sistema ?
    Estou perguntando porque meu cliente necessita importar os dados para Arquivo bancário (CNAB) e ele possui uma média de 15 mil clientes/fornecedores
    Um forte abraço
    André Melges
    11 8422-1954

    Boa tarde,
    há algum tempo atrás tive este erro e lembro que tive que usar os templates de endereços para importar o cnpj para a aba de contabilidade do PN.
    O truque é fazer um endereço cujo nome é vazio. Esta linha vai alimentar a aba contabilidade.
    No template vc vai ter alguma coisa do tipo
    CardCode | Address | taxId0 | taxId1 | ....
    C001 | Cobrança | 202019993/00001-22 | 101.020.020.222
    C001 | (vazio) | 202019993/00001-22 | 101.020.020.222
    C001 | Destinatário | 202019993/00001-22 | 101.020.020.222
    Não sei se este truque ainda funciona. No pl 25/27 funcionava.
    abraço,
    Weber

  • SPED Fiscal - Imposto de Importação (registro C190, campo VL_OPR)

    Colegas,
    A pouco tempo implementamos as notas para atendimento à NT 2011.004 da SEFAZ e dentre as modificações que ela implementa, como vocês devem saber, ela cria uma nova categoria de imposto para o Imposto de Importação (II01).
    Com esta nova categoria de imposto as notas fiscais de importação passaram a ser digitadas com o destaque deste imposto diretamente na aba de Impostos, assim como acontece com o IPI.
    O problema é que quando esta nota é listada no arquivo do SPED FIscal, o valor do campo VL_OPR(Valor da operação) do registro C190, não fecha com o valor do campo VL_DOC do registro C100 (Valor Total da nota fiscal),considerando apenas um item, para ficar mais fácil o entendimento, isto porque o II deixou de ser considerado no campo "Expenses/Despesas" do item na nota. Isto teve de ser feito por conta da nova categoria de imposto, se mantivermos a digitação do valor neste campo a nota "duplica" o valor do II (esta situação é idêntica para o IPI).
    Analisando o programa standard do SPED Fiscal, no include J_1BEFD_BLOCK_C_AUX2, perform PROCESS_REG_C190, existe um tratamento especfício para o IPI, onde é realizada uma pesquisa pelos impostos do item e existindo o IPI, o seu valor é adicionado ao campo VL_OPR.
    Para o II não existe nenhum tratamento o que está gerando um Aviso no PVA do SPED Fiscal, já que os valores de totais de Item e Nota não fecham.
    Alguém já se deparou com o mesmo problema?
    Alguém sabe se a SAP providenciou ou está providenciando este ajuste (procurei por notas e não localizei nada a respeito).
    Grato pela ajuda.
    Rodrigo

    Encontrei a nota que resolve o problema.
    Note 1670878 - SPED-EFD: C190-VL_OPR does not sum value of import tax.
    Abraços.

  • Desconto do ICMS da Zona Franca de Manaus - Registro de Entrada

    Bom dia caros colegas!
    Estou com um cenário referente ao ICMS da Zona Fanca de Manaus, como sabemos este imposto é dado como desconto no total da fatura, o cenário ora solicitado pelo usuário é o seguinte.
    Vr.Contábil  ->  65.892,29
    BC ICMS     ->   74.877,60
    Aliq.ICMS    ->    12%
    Vr. ICMS      ->     8.985,31
    A versão que estou usando é a 6.0
    Vocês sabem me informar se existe alguma configuração stander para esse cenário, sei que existe a nota 8622370 com desconto na MIRO, porém o lançamento no Registro de entrada não fica correto.
    Abs
    Nobre

    Olá Nobre,
    Não encontrei a nota que você informou.
    Contudo, seguem duas notas bem importantes com configurações da Zona Franca:
    790429 - Transfer to Tax free zone (Zona Franca) ICMS not discounted
    622370 - MIRO: ICMS-Discount by buying in Tax Free Zones(Zona Franca)
    As notas ensinam a configuração das condições especiais para Zona Franca, que são ICZF e ICZG.
    Atenciosamente,
    Carla Kunz Bussolo

  • Nenhum registro concordante encontrado (ODBC -2028) - Em NFS

    Boa Tarde a todos,
    Estou tentando inserir nota fiscal de saída via DI API, e hoje ocorreu este erro em 4 pedidos:
    "Nenhum registro concordante encontrado (ODBC -2028)"
    Outros pedidos foram gerados e continuou a funcionar normalmente a inserção via DI API, apenas para 4 pedidos que ocorreu este erro, o serviço que gera as notas fiscais via DI API, esta instalado a mais de 6 meses em produção, e apenas hoje ocorreu este erro.
    Li documentos, e fiz pesquisas do fórum, e descobri que poderia ser falta de alguma conta contábil, mas verifiquei e todas as contas estão inseridas corretamente, desconto, vendedores, itens, até mesmo já inseri outros pedidos iguais, e eles foram faturados.
    Gostaria de saber se alguém sabe como solucionar para faturar os pedidos, ou até mesmo de como evitar este tipo de problema.
    Abraços
    Kleber Aquino

    Bom dia Kleber!
    Kleber tive exatamente o mesmo problema que você, no meu caso eu estava trabalhando com uma despesa acessória de Fretes CIF (que o destinatário paga) como fiz esse lançamento, e na parametrização da despesa acessória (adminitração - Configurações - Gerais - Despesas Acessórias) eu não tinha colocado a conta de receita, somente a de Despesa quando eu ia inserir qualquer documento de venda, ele mostrava essa mensagem, fiz a correção da parametrização, colocando a conta de despesa para essa despesa acessória e a situação foi corrigida, e depois olhando a contabilização e efetuada constatei que o lançamento ficou correto também, espero ter ajudado,
    Abraço
    Josiane Giacomelli
    Consultora
    SAP Partner Channel
    Quebec Consultores Associados

Maybe you are looking for