Modificación de hojas de Excel para liquidación de gastos de desplazamiento 

Las Hojas de Excel se utilizan para introducir datos de gastos de desplazamiento en el IAC correspondiente. Si las hojas de Excel instaladas no se adaptan a sus necesidades, se pueden modificar (por ejemplo, mediante la introducción o la eliminación de campos de entrada). Esta sección presenta un resumen de las hojas que se suministran con la instalación de IAC estándar y describe cómo se pueden modificar.

Introducción

Cuando se instala el IAC de Liquidación de gastos de desplazamiento en el servidor Web, las hojas de Excel para los gastos de desplazamiento se ubican con los ficheros de servicio PRWW (en el subdirectorio 99\SHEETS).

Las hojas de Excel EN_TRIP.xls y DE_TRIP.xls en el directorio 99\Sheets se abren cuando el usuario hace clic en el enlace Download entrada de comprobantes. Sin embargo, recomendamos no modificar estas hojas, ya que es mucho más fácil modificar la hoja de Excel TRIP_ITS.xls. Esta hoja no tiene la protección estándar. Contiene macros adicionales que le ayudan a efectuar modificaciones y a traducir al idioma apropiado a la vez que renueva la protección antes de mandarlos al usuario final.

Funcionamiento

Cuando el usuario hace clic en el enlace Download entrada de comprobantes se procesa el campo de comandos 'LOAD' en el Sistema R/3. Durante la ejecución de esta operación, se envían varias llamadas de OLE al servidor especificado en el Customizing de destino RFCCOM en la tabla T706ESS1. Todos los lugares de destino RFCCOM se procesan en la tabla T706ESS1 consecutivamente, teniendo en cuenta la distribución dinámica simple entre varios servidores. Primero, el OLE llama la inicialización de Excel en el servidor RFCCOM. A continuación, se abren los modelos originales especificados para el idioma de trabajo del usuario (por ejemplo, DE_TRIP.xls para el alemán o EN_TRIP.xls para el inglés). El directorio del que proviene la hoja se determina a través del parámetro "RAW_TEMPLATE" en la tabla T706ESS2. Para acelerar el proceso de carga, puede copiar los ficheros en el disco duro local (por ejemplo, a C:\temp). Después de que se haya abierto la hoja, se transfieren todos los datos del Customizing derivados del método EmployeeTrip.GetOptions a la hoja de Excel. Llegados a este punto, se graban los datos en fondo y no visibles al usuario. Estos datos incluyen reglas de verificación de datos, valores para listas de selección y normas empresariales de comprobantes.

Después de la inicialización, se protege la hoja de Excel y se guarda en el directorio estático del servidor de Web con una denominación predefinida (el número de personal del usuario). El directorio en que se guarda la hoja se determina por el parámetro TEMPLATE en la tabla T706ESS2. Después de que se haya grabado la hoja, se visualiza una página de HTML en el browser de navegación en Web del usuario y el browser carga la hoja de Excel desde el servidor de Web. El servidor de Web desde el que se carga la hoja se determina también por las parametrizaciones del Customizing en la tabla T706ESS2 (parámetro HTTP_OUT). Los parámetros TEMPLATE y HTTP_OUT hacen referencia al mismo directorio. El parámetro TEMPLATE especifica la denominación UNC y el parámetro HTTP_OUT la denominación URL para el directorio.

Cuando se ha cargado la hoja del servidor de Web, se visualiza en el mandante (ya sea en el browser o en una ventana de Excel separada). En ese momento, el usuario puede empezar a introducir gastos de desplazamiento o a grabar la hoja en el disco duro local y utilizarlo como modelo para introducir viajes.

Después de haber introducido los datos, el usuario selecciona Presentar. Esta operación inicia la macro de Excel "Submit_Web" que extrae los datos introducidos. Cuando se extraen los datos de la hoja, no se trasladan al servidor de Web inmediatamente. En primer lugar, se graban los datos en un fichero en el disco duro local, en C:\EmployeeID.htm, EmployeeID hace referencia al número de personal del usuario. Este fichero contiene todos los datos introducidos en pantallas de HTML escondidas y campos de entrada para el nombre del usuario y la contraseña (el empleado puede haber estado offline entre el download de la hoja y la presentación de los datos).

Después de que el usuario haya introducido la contraseña y haya seleccionado Presentar, el formulario se traslada al servidor de Web. Se inicia el servicio PRWW y se procesa el campo de comandos CREA inmediatamente. Se extraen todos los datos del flujo de datos HTTP y se contabilizan en el método EmployeeTrip.CreateFromData.

Los procesos de inicialización y de presentación se ilustran en los gráficos que figuran a continuación:

Funciones básicas

Funciones generales

Cuando se crea el fichero Excel para el empleado, se rellena la hoja "Lookup_Data" con la información del Customizing para el empleado en cuestión. Esta hoja contiene toda la información procedente del Sistema R/3 (por ejemplo, las clases de gasto y los países).

Cuando se introducen los datos, la hoja "Data" graba todos los datos de entrada (especialmente la información ampliada de comprobantes). Cualquier otra clase de información se guarda en pantallas de entrada relevantes para evitar duplicar el almacenamiento de la información en más de un lugar.

La hoja "Texts" comprende todos los strings de recurso necesarios para visualizar mensajes o textos de campo en el idioma apropiado para que se pueda traducir el fichero Excel. Si se requieren mensajes de error, se debe llamar la macro "MsgText" (en el módulo de funciones). Ésta extrae el texto de esta hoja y sustituye las variables $v1 a $v3 por los valores de campo apropiados u otros textos.

Si el usuario abre el fichero Excel en el disco duro local o llama el fichero del browser de navegación en Web, se ejecuta la macro "Auto_open". Esta macro inicia los eventos "Change" (macro "Field_OnChange") y "Double click" (macro "Field_OnDoubleClick") en la pantalla de entrada principal y suprime el botón Iniciar. (El botón iniciar únicamente es visible en aquellos casos en los que no se ejecute la macro "Auto_open", como sucede en algunas versiones de Excel anteriores.

El módulo de Excel "Presentar" comprende la codificación para extraer los datos introducidos desde el fichero Excel y crea un fichero de HTML en el disco duro local. Cuando se extraen los datos, se crea un string que comprende todas las certificaciones de HTML necesarias para una página de HTML completa (por ejemplo, <HTML> <BODY> <...> </BODY> </HTML>). En este string, se graban todos los datos introducidos en campos de HTML escondidos (<INPUT TYPE=HIDDEN NAME=xyz VALUE="abc">). A continuación, se guarda este string en Excel con el nombre de fichero EmployeeID.htm utilizando las certificaciones I/O estándares. Finalmente, después de que se haya grabado el fichero, se ejecuta la macro "Define_Transfer". Esta macro especifica cómo se debe iniciar el browser estándar. (El Excel 95 utiliza la instrucción de inicialización, el NT 4.0, la certificación cmd y el Windows 3.x el acceso completo al browser de navegación en Web.) En este momento se inicia el browser con la certificación Shell y el modo de transferencia relevante para iniciar el fichero recién creado.

Modificación de hojas - conceptos básicos

Se pueden modificar los modelos originales utilizando el Excel 97 (no utilice versiones anteriores), empezando con el modelo de traducción (TRIP_ITS.xls). Los modelos originales (por ejemplo, DE_TRIP.xls y EN_TRIP.xls) pueden crearse semiautomáticamente posteriormente en el proceso utilizando el modelo de traducción. El modelo de traducción comprende macros adicionales que le pueden ayudar durante el proceso de modificación.

Para abrir el modelo de traducción, seleccione el fichero TRIP_ITS.xls en el diálogo "Abrir archivo" y pulse la tecla de mayúsculas a la vez que selecciona "Abrir".

Esto impide que la macro auto_open se ejecute. En cuanto se haya ejecutado la macro auto_open, no se podrán visualizar algunos pulsadores y se iniciarán todos los eventos para la hoja: Esto hace casi imposible modificar la hoja.

 

 

Creación de hojas supeditadas a clave de idioma

Condiciones previas:

  1. Se ha instalado el MS Excel 97 o una versión posterior.
  2. Se ha instalado la Biblioteca RFC SAP Automation.

Como ya se ha mencionado anteriormente, no debería utilizar las hojas supeditadas a clave de idioma para modificar la hoja. Utilice el TRIP_ITS.xls para hacer sus cambios, y entonces recrear las hojas supeditadas a clave de idioma.

  1. Después de que haya terminado de modificar el modelo de traducción, tiene que recrear el modelo original supeditado a clave de idioma. Para hacerlo, proceda de la siguiente manera:
  2. Grabe la versión actual de la hoja TRIP_ITS.xls en el directorio 99\sheets.
  3. Inicie el módulo de funciones "xxx_ITS".
  4. Seleccione la macro "Translate".
  5. Seleccione el idioma relevante, fijando la variable "Idioma" (por ejemplo, el idioma = "EN" para el inglés).
  6. Los strings para el idioma seleccionado se leen a partir del Sistema R/3.

  7. Inicie la macro "Translate".
  8. Esta macro lee los strings del Sistema R/3 llamando al módulo de funciones GET_TEXTELEMENT_FOR_SHEET varias veces. Puede añadir más elementos de texto a la tabla T706ESS3 en los rangos de nombre de cliente X*, Y* y Z*.

  9. Si se desea, se puede borrar el módulo de funciones xxx_ITS para grabar el ancho de banda de transferencia durante la transferencia al PC del cliente. Para borrar haga clic con el botón derecho del ratón en el módulo de funciones y seleccione "Borrar" desde el menú de la ventana de diálogo.
  10. Grabe el modelo original creado de nuevo en el directorio 99/sheets con el nombre [Language]_TRIP.xls, en el que [Language] es la clave de idioma de dos caracteres R/3.
  11. Recargue el modelo de traducción y repita este procedimiento desde el paso 2 para todos los idiomas que quiere ofrecer en su servidor de Web.
  12. Este procedimiento garantiza que las hojas de Excel son las mismas en todos los idiomas diferentes y funcionan del mismo modo.

  13. Si la variable "RAW_TEMPLATE" en la tabla T706ESS2 no coincide con el acceso en el que almacenó los modelos originales, tiene que enviar las nuevas hojas a todos los servidores que ejecutan RFCCOM y colocarlas en los directorios relevantes.

 

Convenciones para fijar nombres para la transferencia de datos

Cuando se trasladan los datos al servidor de Web utilizando HTTP Post, debería tener en cuenta que existen varios nombres de campo que no debería utilizar al añadir campos a la hoja. Estos nombres de campo ya están siendo utilizados por el fichero Excel. La sección siguiente contiene una lista de estos nombres de campo.

Entrada de comprobantes

Datos de viaje generales:

Nombre de campo

Descripción

Nombre de campo

Descripción

       

PID

Identificación de empleado

   

SDATE

Fecha de inicio de viaje

STIME

Hora de inicio de viaje

EDATE

Fecha fin de viaje

ETIME

Hora final de viaje

REASON

Razón de viaje

DEST

Destino del viaje

COUNTRY

País del viaje principal

REGION

Región del viaje principal

PDMEALS

Liquidación de dietas de manutención

PDACCOM

Liquidación de dietas de alojamiento

NONIGHTS

Liquidación de dietas por número de noches.

   

DATEOUT

Salida de fecha de paso de frontera

TIMEOUT

Salida de tiempo de paso de frontera

DATEIEN

Fecha de vuelta de paso de frontera

TIMEIN

Tiempo de vuelta de paso de frontera

COUNTRYIN

País desde el cual se vuelve

REGIONIN

Región desde la cual se vuelve

TTCSIN

Clase de viaje concreto de la empresa para paso de frontera

   

SCHEMA

Esquema de viaje

TTCS

Clase de viaje global concreto de la empresa

TTSTAT

Clase de viaje global establecida por la ley

TTACTI

Clase de actividad del viaje global

 

Comprobantes:

(xxx es una reserva-espacio para el número de comprobante relevante, por ejemplo, RTY012 para la clase de entrada 12)

RNOxxx

Número de comprobante

RTYxxx

Clase de gasto

RAMxxx

Importe de entrada (4 decimales)

RCUxxx

Moneda

RRAxxx

Tipo de moneda (5 decimales)

RVAxxx

Tipo de IVA (2 car.)

RDAxxx

Fecha del comprobante

RTExxx

Texto breve (11 car.)

RSTxxx

Asignación de destino parcial

RPSxxx

Cuota porcentual o absoluta

RBRxxx

Número de desayunos

RCNxxx

País para el comprobante

RRGxxx

Región para el comprobante

RTTxxx

Clase de viaje para el comprobante

RFDxxx

Fecha de inicio

RTDxxx

Fecha de finalización

RNUxxx

Cantidad (de noches/personas)

RDExxx

Descripción (50 car.)

RLOxxx

Lugar (50 car.)

RPUxxx

Propósito (50 car.)

RRExxx

Razón (50 car.)

RCCxxx

Empresa de tarjeta de crédito (2 car.)

RCDxxx

Número de documento de tarjeta de crédito.

RCTxxx

Institución de servicio de tarjeta de crédito

 

Kilómetros:

(xxx es una reserva-espacio para la posición km relevante, por ejemplo, MICO012 para la posición 12 km, país)

MINOxxx

Cantidad km

MIDAxxx

Fecha km

MITOxxx

Total km

MIDOMxxx

Km nacionales

MIPLxxx

Matrícula

MIMAxxx

Marca de coche

MITYxxx

Clase de vehículo

MICLxxx

Categoría de vehículo

MICOxxx

País

MIRGxxx

Región

 

Destinos parciales:

(xx es una reserva-espacio para la posición de destino parcial relevante, por ejemplo, STFD01 para fecha de inicio, posición 1 de destino parcial)

STNOxx

Cantidad de destinos parciales

STFDxx

Fecha de inicio

STFTxx

Desde el momento

STTDxx

Fecha de finalización

STTTxx

Hasta el momento

STRExx

Razón

STLOxx

Lugar

STCOxx

País

STRGxx

Región

STSTTxx

Clase de viaje legal

STTTCSxx

Clase de viaje concreta para la empresa

STATTxx

Clase de actividad del viaje

STNIGHTxx

Nº.de noches en el destino parcial

   

 

Texto:

TEXTxxx

Línea de texto