Creación de Opercalc DLL para la rutina de cálculo de operación personalizada

El programa de configuración SyteLine instala la versión estándar de opercalc50.dll en el directorio \winnt\system32. Este archivo dll contiene una versión de prueba de la rutina ol_opercalc. Debe crear un archivo opercalc50.dll personalizado que contenga la rutina ol_opercalc personalizada que se usará en lugar del opercalc50.dll estándar.

Siga estos pasos para crear este archivo dll:

  1. Cree un nuevo proyecto de biblioteca de vínculos dinámicos Win32 en Visual C++.
  2. Traslade el archivo de código fuente de Microsoft C al directorio del proyecto.
  3. Añada el archivo de código fuente a la carpeta Archivos de código fuente del proyecto. Asegúrese de que el valor de retorno es de tipo Double. El valor de retorno debe representar el total de la duración de la operación necesario (en horas) para el número especificado de piezas mediante los recursos especificados y durante el intervalo de tiempo disponible para la producción.
  4. Traslade el archivo de definiciones (que se muestra a continuación) al directorio del proyecto. Si existe una carpeta Archivos de definiciones, añada el archivo de definición. Es posible que tenga que crear la carpeta Archivos de definiciones.
  5. Introduzca los ajustes en la configuración del proyecto. Por ejemplo, debe:
    • Denominar al archivo dll resultante opercalc50dll.
    • Identificar dónde se puede encontrar el archivo de encabezado ol_api.h. Esta referencia es obligatoria porque la declaración de la estructura que se transfiere (opercalc_s) reside en este archivo de encabezado. Se puede hacer referencia a él como $(OLXDIR50)\include.

    Debe compilar el código con las siguientes opciones de generación de código para que coincida con las que espera la llamada ejecutable del sistema:

    • convención de llamada _stdcall
    • multiproceso
    • alineación de miembros con estructura de 8 bytes
  6. Cree el proyecto en el formulario de depuración o de liberación (existen configuraciones independientes para cada una). En caso de problemas, los mensajes aparecerán en la ficha Crear. En caso de problemas, modifique el código fuente o la configuración del proyecto para corregirlos.
  7. Traslade el nuevo archivo opercalc50.dll a la carpeta del proyecto del Planificador asociado en el servidor del Planificador. Por ejemplo, si el proyecto se denomina Alt000, coloque el archivo dll en \Planner\Projects\Alt000.
    Nota:  Cuando elimine un proyecto APS, se eliminarán todas sus carpetas y archivos, incluido opercalc50.dll. Por tanto, tenga cuidado de no colocar nunca el código fuente de Visual C++ (como se mencionó en el paso 1) en la carpeta del proyecto.

Ejemplo de definición de archivo

             ;--------------------------------------------------
				         ; OPERCALC50.DEF DLL library module definition file
				         ;--------------------------------------------------          LIBRARY
				OPERCALC50 INITINSTANCE          DESCRIPTION 'SyteAPS V5.0 OperCalc', Copyright
				© 2010 Infor. All rights reserved. www.infor.com'          ;          EXPORTS
				         ol_opercalc = _ol_opercalc@4          _ol_opercalc = _ol_opercalc@4