¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Problema ao criar objeto MSCOMMLib.MSComm.1: solução e dicas de SEO

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 31 Vistas
0
Cargando...

Olá especialistas,

Estamos tentando ler dados da porta serial com a seguinte função que obtivemos da internet.

O problema surge ao criar o objeto com a sentença CREATE OBJECT o_obj '"MSCOMMLib.MSComm.1"'.

Isso retorna um sy-subrc = 2 e mostra a exceção NO_CREATE_OBJECT.

Já copiamos o arquivo MSCOMM32.OCX em c:\windows\system32 e o registramos corretamente com regsvr32.exe.

Tentamos no Windows XP e Vista.

Alguém tem alguma ideia?

Obrigado antecipadamente.

FUNCTION ZSERIALCOM.

*----


" "Interface local

* IMPORTING

* REFERENCE(MODE) TYPE I DEFAULT 0

* REFERENCE(COMMPORT) TYPE I DEFAULT 1

* REFERENCE(SETTINGS) TYPE C DEFAULT '2400,N,8,1'

* REFERENCE(OUTPUT) TYPE C OPTIONAL

* EXPORTING

* REFERENCE(INPUT) TYPE C

* EXCEPTIONS

* NO_CREATE_OBJECT

*----


TYPE-POOLS: sabc.

INCLUDE ole2incl.

PERFORM init.

PERFORM open_port USING commport settings.

IF mode = 0.

PERFORM read_port

CHANGING input.

ENDIF.

IF mode = 1.

PERFORM write_port

USING output

CHANGING input.

ENDIF.

PERFORM final.

ENDFUNCTION.

DATA: o_obj TYPE ole2_object.

&----


*& Form Init

&----


  • texto

----


  • --> texto p1

  • <-- texto p2

----


FORM init.

DATA:

wa_repid LIKE sy-repid.

wa_repid = sy-repid.

CALL FUNCTION 'AUTHORITY_CHECK_OLE'

EXPORTING

program = wa_repid

activity = sabc_act_call

application = 'MSCOMMLib.MSComm.1'

EXCEPTIONS

no_authority = 1

activity_unknown = 2

OTHERS = 3.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CREATE OBJECT o_obj '"MSCOMMLib.MSComm.1"'.

IF sy-subrc <> 0.

RAISE no_create_object.

ENDIF.

ENDFORM. " Init

----


  • FORM open_port *

----


  • ........ *

----


  • --> COMMPORT *

  • --> SETTINGS *

----


FORM open_port USING commport settings.

SET PROPERTY OF o_obj

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Caro amigo,

O problema ocorre ao criar o objeto com a instrução CREATE OBJECT o_obj '"MSCOMMLib.MSComm.1"'.

Isso retorna um sy-subrc = 2 e exibe a exceção NO_CREATE_OBJECT.

Como você encontrou a solução para o problema?

Obrigado,

Sohail

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Kholoud.

Você pode usar um programa desenvolvido em Java ou .NET para ler uma porta serial.

Em seguida, você deve utilizar Conectores SAP para enviar informações entre este programa e o SAP.

Conector Java-> http://help.sap.com/saphelp_nw70ehp1/helpdata/en/b4/3f9e64bff38c4f9a19635f57eb4248/frameset.htm

Conector .NET-> http://help.sap.com/saphelp_nw70ehp1/helpdata/en/fe/37c22b75e6154e8c67917bed8c70df/frameset.htm

Saudações,

Manuel H.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá,

Estou enfrentando o mesmo problema, você encontrou alguma solução?

Obrigado

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá,

Você teve alguma ideia de como proceder? Estou enfrentando o mesmo problema.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?