Medruck - Smartform?!?!?!

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • mfr1711
    Member
    • oct
    • 33

    #1

    Medruck - Smartform?!?!?!

    Buenos dias, necesitaria saber si se puede hacer una copia del MEDRUCK (Formulario de Compra) en un SMARTFORM, porque me dijeron que existen algunos casos que no se puede cambiar un SAPSCRIPT por un SMARTFORM.

    Muchas gracias!!!

    Saludos
  • calanis
    Senior Member
    • oct
    • 147

    #2
    SAPScript-->Smartforms

    Para pasar un SAPScript a un Smartforms, para el caso del Pedido de Compras debes proceder así:
    1-Customizar el Programa de Control y el formulario que emitas
    Lo realizas desde la SPRO
    Gestión de Materiales-->Compras-->Mensajes-->Formularios para mensajes-->Asignar formulario y programa de edición para Pedido
    Por Ej:
    Mensaje:NEU-Pedido de compras
    Medio:1
    Programa:ZMEDRUCK
    Rutina Form:ENTRY_NEU
    Formulario:ZMEDRUCK <--La única restricción el largo de los SAPScript como Nombre

    2-Modificas a Placer el Form ENTRY_NEU, en donde tienes datos a nivel global que te son de ayuda como la NAST.
    Ej:
    *&---------------------------------------------------------------------*
    *& Include ZMEDRUCK_TOP
    *&---------------------------------------------------------------------*

    CONSTANTS: c_tdsfname TYPE tdsfname VALUE 'ZMEDRUCK'.

    DATA: gs_ekko type ekko,
    gs_proveedor type adrc,
    gt_ekpo like ekpo occurs 0 with header line,
    gt_konv like konv occurs 0 with header line,
    gt_eket like eket occurs 0 with header line.

    *----------------------------------------------------------------------*
    * PARAMETROS DE SELECCION *
    *----------------------------------------------------------------------*
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: p_ebeln LIKE ekko-ebeln.
    SELECTION-SCREEN END OF BLOCK b1.
    FORM entry_neu USING return_code us_screen.

    * tomo el nro del movimiento que se me envía por mensaje
    p_ebeln = nast-objky(10). "Nro Doc

    * cargo los datos
    PERFORM cargar_datos.

    IF NOT gs_ekko IS INITIAL.
    * llamo al smartform
    PERFORM imprimir USING return_code us_screen.
    ELSE.
    * seteo para que retorne un mensaje de error
    return_code = '999'.
    ENDIF.

    ENDFORM. "ENTRY
    Espero te sirva de guía.

    Saludos
    Carlos D. Alanis
    <=<< Compartir conocimiento es una manera de innovar >>=>

    Comentario

    • mfr1711
      Member
      • oct
      • 33

      #3
      Muchas gracias por tu respuesta, pero me queda la duda de como modificar el FORM ENTRY_NEU, ya que es standard y no encontre ningun user-exit.

      Ademas en ese form se utilizan las siguientes funciones que tambien son usadas en otros forms, por lo que supongo que si las saco va a pinchar en todo el programa:

      call function 'ME_READ_PO_FOR_PRINTING'
      exporting
      ix_nast = nast
      ix_screen = ent_screen
      importing
      ex_retco = ent_retco
      ex_nast = l_nast
      doc = l_doc
      changing
      cx_druvo = l_druvo
      cx_from_memory = l_from_memory.
      check ent_retco eq 0.
      call function 'ME_PRINT_PO'
      exporting
      ix_nast = l_nast
      ix_druvo = l_druvo
      doc = l_doc
      ix_screen = ent_screen
      ix_from_memory = l_from_memory
      ix_toa_dara = toa_dara
      ix_arc_params = arc_params
      ix_fonam = tnapr-fonam "HW 214570
      importing
      ex_retco = ent_retco.

      Muchas gracias, saludos!

      Comentario

      • calanis
        Senior Member
        • oct
        • 147

        #4
        Hola buen día

        Si observas el Form ENTRY_NEU esta dentro del Programa ZMEDRUCK y es el nombre que le das vos, osea yo le puse el mismo del estandart y vos lo modificas como vos desees ya que es un Z.
        Ahora esa función es válida para usar o si deseas realizas las consiltas SQL que necesites.

        Saludos
        Carlos D. Alanis
        Carlos D. Alanis
        <=<< Compartir conocimiento es una manera de innovar >>=>

        Comentario

        • mfr1711
          Member
          • oct
          • 33

          #5
          Perfecto, ahora si. Muchas gracias!!

          Saludos

          Comentario

          • antsurea
            Junior Member
            • may
            • 1

            #6
            Buenos días, esoty realizando esta modificación pero cuando voy a ejecutar la me9n, botón ejecutar mensaje m sale error en el log, " no se encuentra la rutina ENTRY_NEU en el programa ZMEDRUCK, pero si me permite visualizar el formulario por vista previa. Verifico por la se38 entro al programa mencionado y si se encuentra la rutina.

            Agradezco mucho su colaboración para resolver este problema.

            Comentario

            Trabajando...