martes, 18 de octubre de 2011

Cómo transportar un texto standard. II.

Una forma de transportar en una orden que tengamos, o en una que creemos para ello, un texto standard creado con la SO10 alternativa a la que explicamos el otro día. Abrimos la tarea de la orden desde la SE09 (o SE10), doble y le damos al lápiz de modificar. En una nueva línea añadimos los datos.
  • En la columna ID Programa ponemos R3TR.
  • En la columna Tipo Objeto ponemos TEXT.
  • Y finalmente en la columna Objeto ponemos TEXT,<nombre_imagen>,ST,E .


El último parámetro del Objeto es el idioma, que cambiaremos según convenga. Los parámetros del objeto podemos verlos si vamos a la SO10. Clic a Pasar a -> Cabecera, son los 4 primeros datos que nos informan.
Finalmente guardamos la tarea.
Gracias a JC Delgado que me lo ha explicado.

viernes, 7 de octubre de 2011

Pierdo las traducciones de los smartforms.

He tenido un grave problema al traducir a varios idiomas un Smartform con la se63. El problema casi más grave: perder todas las traducciones, borradas completamente, como nuevas me quedaron. Por si no lo sabes se pueden traducir los Smartforms con la SE63:
Objetos ABAP -> Otros textos explicativos. Tipo FS Formularios y estilos, y SSF SAP Smart Form.

Buscando por internet propuestas para evitar este problema he encontrado soluciones laboriosas. Pero creo que lo mejor es seguir consejo de este otro foro en inglés, y no tener abierto el formulario y las traducciones a la vez.  Por ahora me está funcionando.

martes, 27 de septiembre de 2011

Implementar la user exit MV45AFZZ.

Directamente vamos con la SE38 o SE80 a buscar dicho include o en el programa SAPMV45A.  Aunque en algunos foros he llegado a encontrar que hace falta pedir la clave de acceso de la instalación, gracias otra vez  a Joan Bladé,  vemos que no:
1.       Hacemos clic sobre la espiral.

2.       Tratar -> Operaciones ampliación -> Insertar puntos de ampliación implícitos. Nos marcará con unas fechas unas líneas a la derecha.
3.       Nos posicionamos en la línea dónde nos interese programar.  Vamos a Tratar -> Operaciones ampliación -> Crear Implementación. Hacemos clic sobre Cod. Fuente (en principio), nos mostrará los puntos que ya existen. Hacemos clic sobre el icono folio en blanco y creamos el nuestro dándole nombre y descripción.

4.       Nos habrá creado el punto de ampliación ENHANCEMENT 1  ZMV45AOZZ_MIO. Aquí ya podemos programar. 
Si posteriormente queremos modificar algo en el trozo de código insertado debemos:
1.       Hace clic en la espiral.
2.       Nos pondremos en la línea del ENHANCEMENT, botón derecho del ratón, Implementación Ampliación -> Modificar Ampliación.
No hay que olvidar activar la Ampliación.

jueves, 22 de septiembre de 2011

Cómo transportar un texto standard.

Gracias al compañero Joan Bladé, por decirme como transportar un texto standard creado con la SO10.

1. Con la SE09 o la SE10 creamos una orden de customizing o workbench.
2. La desplegamos para ver la tarea y nos la anotamos.
3. Vamos  la transacción SE80, o la SE38, y abrimos el programa RSTXTRAN. Ejecutamos. Indicamos la tarea y el nombre del texto standard.
4. Seleccionamos todo.
5. Le damos al OK.
6. Le damos al botón de Pasar Texto a Correción.
7. Liberamos y transportamos entonces la orden de la forma habitual.

jueves, 26 de mayo de 2011

SE63. Code Page Incorrecta.

Estaba traducciendo unos smartforms con la se63. Luego Objetos ABAP -> Otros textos explicativos. Tipo FS Formularios y estilos, y SSF SAP Smart Form.
Sorprendentemente al traducir del castellano al inglés y frances todo iba bien, pero al intentar traducir al alemán me decía Code Page Incorrecta. ¿Puede tener un problema en SAP con el alemán?
Por suerte David, el de sistemas, después de unos minutos ha ido a la se38, ha buscado el programa RSCPINST y lo ha ejecutado. Nos ha salido un listado de idiomas donde no estaba el alemán, hemos añadido DE y todo ha ido ok.

viernes, 26 de noviembre de 2010

Como añadir columnas en las transacciones KSB1 y KOB1.

Otra vez tengo que volver a añadir columnas a una transacción de report standard. Para la KSB1 y KOB1, hay que actuar de la misma forma que para la CIJ3.
  1. Vamos a la CMOD.
  2. Creamos un nuevo proyecto.
  3. Asignamos la ampliación COOMEP01.
  4. Vamos a componentes.
  5. En tablas include añadimos nuestros campos en CI_RKPOS y lo activamos.
  6. Usamos el exit EXIT_SAPLKAEP_001, para llenar los nuevos campos. Lo haremos porque nos llega línea a línea en la estructura CS_RECORD. Si no queremos que lo haga para otras transacciones que usan este mismo exit hagamos CHECK sy-tcode = 'KSB1'. O algo similar según las transacciones que queramos tratar.
  7. Usamos el EXIT_SAPLKAEP_009 para tratar el field_catalog y estas cosas. Lo que yo hago es que si son otras transacciones quino los nuevos campos para que no salgan en el layout ni se puedan poner.
  8. Vamos a la SM34.
  9. Añadimos los nuevos campos a la vista V_TKALV.

lunes, 15 de noviembre de 2010

Como añadir columnas en la transaccion CIJ3.

Interesante explicación en este blog:
Añadir campo a informes CO de partidas individuales.

Por otra parte he encontrado aquí una explicación mucho más gráfica:
Adding Fields to CJI3 Report.

Y no lo he acabado de miar pero parece que aquí está más ampliamente explicado:
Expand PS Master Data by Adding New Fields to Project Builder.

He podido hacerlo siguiendo el primer enlace para lo de la CMOD y el segundo para la SM34. Al final lo que más me ha costado ha sido que al intentar entrar en el include para la user exit me daba el siguiente mensaje:

Nombres programa ZX... reservados para includes de grupos funciones exit. (Nº mensaje: DS027) 

Por fortuna en un foro encontré la solución, es tan tonto, como apretar RETURN, y así entramos. Además de tocar en el user-exit EXIT_SAPLKAEP_001 para la lógica, he tocado en EXIT_SAPLKAEP_009 para modificar el FIELD CATALALOG, para que si no es la transacción que nos interesa no saque las nuevas columnas.