Árbol de páginas
Saltar al final de los metadatos
Ir al inicio de los metadatos

Estás viendo una versión antigua de esta página. Ve a la versión actual.

Comparar con el actual Ver el historial de la página

« Anterior Versión 60 Siguiente »

Se puede usar el programa econnect.sync para poder enviar la siguiente información de un ERP al servidor de e-connect:

  • Referencias
  • Fases
  • Fases-Referencias
  • Componentes
  • Órdenes de Trabajo
  • Ordenes de trabajo por trabajador
  • Dependencias Ordenes de trabajo
  • Trabajadores


A continuación se explica como configurarlo para poder iniciar el envío de esta información.


Configuración general

Debe existir el archivo config.xml en el mismo directorio donde se encuentre el archivo .exe usado (ver el apartado Configurar sincronizador#Programas).

Importante: Antes de realizar cambios en el archivo config.xml, el programa debe estar parado.

Puedes descargar config.zip [4,60 KB] en el que hay archivos de configuración de ejemplo como punto de partida:

  • config-csv.xml → el origen de los datos son archivos en formato CSV
  • config-json.xml → el origen de los datos son archivos en formato JSON
  • config-xml.xml → el origen de los datos son archivos en formato XML
  • config-odbc.xml → el origen de los datos es una Base de Datos a la que debe conectarse usando ODBC
  • config-oledb.xml → el origen de los datos es una Base de Datos a la que debe conectarse usando OLEDB
  • config-sqlserver.xml → el origen de los datos es una Base de Datos SQL Server


A continuación se detalla el contenido del archivo config.xml:

Auth

Incluye los tokens necesarios para validarse con los servicios de e-connect:

  <Auth>
	<ClientId>{e-connect ClientId}</ClientId>
    <RefreshToken>{e-connect RefreshToken}</RefreshToken>
    <AccessToken />
    <ExpiresUtc xsi:nil="true" />
  </Auth>

Hay que sustituir el texto {e-connect RefreshToken} por el token de nuestro usuario de e-connect i el texto {e-connect ClientId} por el cliente de nuestro usuario de e-connect. Ver el documento Obtener Refresh Token para saber cómo obtenerlo. Es importante no cambiar esta información una vez el sincronizador esté en funcionamiento para evitar problemas de autenticación.

  • ClientId→ Id necesario para obtener un nuevo AccessToken
  • RefreshToken → Token necesario para obtener un nuevo AccessToken
  • AccessToken → Token necesario para realizar las peticiones al servidor de e-connect
  • ExpiresUtc → Fecha/hora (UTC) cuando caducará el AccessToken actual

En el caso que no haya AccessToken o ExpiresUtc o esta última haya expirado, se obtendrá un nuevo AccessToken. Al obtener uno nuevo, se actualiza el archivo de configuración con los nuevos valores.

Trigger

Indica al programa cuando debe ejecutarse la sincronización.

  <Trigger>
    <Type>Schedule</Type>
    <Parameter>0 0/15 * * * ?</Parameter>
  </Trigger>

Los posibles valores de Type son:

  • Schedule → ejecuta la sincronización según una configuración de tiempo (en el ejemplo se ejecutaría cada 15 minutos).
  • Once → ejecutar únicamente una vez.
  • FileDetected → ejecuta la sincronización cuando se detecta un archivo nuevo en alguna de las carpetas de Input. Sólo disponible si todos los DataSource de Input son de tipo Files.


El contenido del Parameter depende del Type escogido:


Atención: el tipo FileDetected no reintentará procesar el archivo en el caso que haya un error de comunicación con el servidor. Por esa razón, recomendamos usar el tipo Schedule.

DataSources

Configuración de los distintos orígenes de datos (tanto para entrada como para salida).

  <DataSources>
    <DataSource xsi:type="DataSourceFilesCsv">
      <Id>1</Id>
      <Name>File Sample</Name>
      <Type>Files</Type>
      <Source>{Path to CSV files}</Source>
      <Format>Csv</Format>
      <Separator>;</Separator>
    </DataSource>
  </DataSources>
  • Atributo xsi:type → posibles valores:
    • DataSourceFilesCsv

    • DataSourceFiles

    • DataSourceDatabase

  • Id → identificador único para poderlo asociar a los SyncItem (ver después).
  • Name → nombre identificativo. Sólo para que el usuario pueda diferenciarlo fácilmente.
  • Type → indica la forma de obtener o guardar los datos. Posibles valores:
    • Files
    • Database
  • Source → el valor cambia en función del Type:
    • Files → ruta al directorio donde están los archivos (debe existir si se usa para un SyncItemInput).
    • Database → ConnectionString para conectarse a la Base de Datos.


El DataSourceFilesCsv debe tener un parámetro adicional (Separator) para indicar el carácter o caracteres que deben usarse para obtener los datos del archivo CSV. Para usar más de un carácter, deben ponerse juntos (Ej: para usar el punto y como además de la coma, habría que usar <Separator>;,</Separator>). En caso de usarlo también para exportar datos, se usará el primer carácter como separador para el archivo CSV generado por el sincronizador.

En el ejemplo, se usan archivos en formato CSV separados por punto y coma.

Si se necesitan distintos tipos de orígenes, se recomienda copiar el nodo DataSource del archivo de configuración de ejemplo adecuado para incorporarlo al config.xml propio.

Input

Define la información que se va a importar a e-connect.

  <Input>
    <SyncItemInput>
      <Name>CSV File: Work Orders</Name>
      <DataSourceId>1</DataSourceId>
      <OrderPos>0</OrderPos>
      <LastModified xsi:nil="true" />
      <DataType>WorkOrder</DataType>
      <Expression>{Filter to apply when searching for files. Ex: am*.csv}</Expression>
    </SyncItemInput>
  </Input>
  • Name → nombre identificativo. Sólo para que el usuario pueda diferenciarlo fácilmente.
  • DataSourceId → identificador del DataSource del que obtener los datos para este Item.
  • OrderPos → posición en la que se debe procesar este Item dentro de todos los Items Input.
  • LastModified → fecha/hora del último elemento que se haya procesado (en el caso que los elementos tengan el campo LastModified).
  • DataType → posibles valores (pueden combinarse usando |):
    • Reference → referencias / artículos
    • Component → componentes, es decir, referencias que forman parte de otra referencia 
    • Phase → fases
    • PhaseReference→ fases-referencias
    • WorkOrder → órdenes de trabajo
    • Worker → trabajadores
    • WorkOrderWorker → trabajadores en órdenes de trabajo
    • CycleTime → tiempos de ciclo
  • Expression → depende del DataSource:
    • Files → filtro a aplicar al buscar archivos en el directorio (Ej.: ordenes-*.csv).
    • Database → consulta a ejecutar en la Base de Datos. Se puede incluir {LastModified} en la consulta para devolver únicamente los elementos modificados desde el último que se ha procesado. Consultar el archivo config-sqlserver.xml para ver ejemplos. Si LastModified para el item no existe, se usará la fecha 1/1/2000

Ver el apartado Campos en Input para ver qué campos deben o pueden tener las consultas o archivos, qué nombre deben tener y qué formato.

Se puede descargar el archivo input-samples.zip [14 KB] para tener ejemplos de los archivos con distintos formatos y consultas SQL.

Output

Permite definir cómo exportar la información de e-connect.

<Output>
    <SyncItemOutput>
      <Name>CSV File: Work Orders Production</Name>
      <DataSourceId>1</DataSourceId>
      <OrderPos>0</OrderPos>
      <LastModified xsi:nil="true" />
      <DataType>WOProduction</DataType>
    </SyncItemOutput>
  </Output>
  • Name → nombre identificativo. Sólo para que el usuario pueda diferenciarlo fácilmente.
  • DataSourceId → identificador del DataSource a usar al guardar los datos.
  • OrderPos → posición en la que se debe procesar este Item dentro de todos los Items Output.
  • LastModified → última fecha/hora de finalización de las producciones recibidas.
  • DataType → posibles valores:
    • GeneralProduction → producción general
    • Users → usuarios
      • Se puede incluir el elemento <Expression></Expression> con uno de los siguientes valores:
        • owner: propietario
        • admin: administrador
        • responsable: encargado
        • worker: operario
        • user: usuario
    • Machines → máquinas

Ver el apartado Campos en Output para ver qué campos tendrán los archivos generados o qué columnas y nombre de tabla debe tener en caso de quererlo en una Base de Datos.

Se puede descargar el archivo output-samples.zip [6,77 KB] para tener ejemplos de los archivos que se generar con los distintos formatos y las tablas a crear en la Base de Datos.


Campos en Input

Para poder importar la información correctamente, el origen de los datos (consulta SQL o archivo) debe tener los campos con los nombres y formatos aquí indicados.

Referencias

Nombre campo

Descripción

Tipo

Requerido

Code

Código único de la referencia

Texto(128)

Description

Descripción de la referencia

Texto

No

PictureFileRuta completa al archivo con la foto (JPG, PNG, GIF)TextoNo
Picture

Foto en formato Base 64 (RFC 3548 o RFC 4648) en archivos y
formato binario para Base de Datos (Ej: image en SQL Server)
Si existe PictureFile se usará antes que Picture

TextoNo
PictureFileNameNombre de archivo de la foto (Ej: 0001.jpg).
Usado junto con Picture, aunque es opcional
TextoNo
IsActiveReferencia activaBool

Puede ser un entero: 0-Falso / 1-Cierto

Puede ser texto: False / True

LastModified

Fecha/hora de última modificación

Fecha/Hora

No


Fases

Nombre campo

Descripción

Tipo

Requerido

Code

Código único de la fase

Texto(50)

Description

Descripción de la fase

Texto(100)

No

LastModified

Fecha/hora de última modificación

Fecha/Hora

No


Fases-Referencias

Nombre campo

Descripción

Tipo

Requerido

PhaseCode

Código de la fase

Texto(50)

ReferenceCode

Código de la referencia

Texto(128)

DescriptionDescripción de la fase para la referenciaTexto(100)No
PictureFileRuta completa al archivo con la foto (JPG, PNG, GIF)TextoNo
PictureFoto en formato Base 64 (RFC 3548 o RFC 4648) en archivos y
formato binario para Base de Datos (Ej: image en SQL Server)
Si existe PictureFile se usará antes que Picture
TextoNo
PictureFileNameNombre de archivo de la foto (Ej: 0001.jpg).
Usado junto con Picture, aunque es opcional
TextoNo

LastModified

Fecha/hora de última modificación

Fecha/Hora

No


Componentes

Nombre campo

Descripción

Tipo

Requerido

ReferenceCode

Código de la referencia

Texto(128)

ComponentCode

Código del componente

Texto(128)

WorkOrderNumber

Número de OT (en caso que los componentes cambien para cada OT)

Texto(50)

No

PhaseCode

Código de la Fase (en caso que los componentes cambien para cada OT + Fase)

Texto(50)

No

Quantity

Cantidad del componente para la referencia

Decimal

No

Comment

Observaciones del componente

Texto

No

LastModified

Fecha/hora de última modificación

Fecha/Hora

No


Órdenes de Trabajo

Nombre campo

Descripción

Tipo

Requerido

Observaciones

Number

Número de OT

Texto(50)


ReferenceCode

Código de la Referencia

Texto(128)


ReferenceDescription

Descripción de la Referencia

Texto

No


PhaseCode

Código de la Fase

Texto(50)

No


PhaseDescription

Descripción de la Fase

Texto(100)

No


ToolingCode

Código del Utillaje

Texto(50)

No


ToolingDescription

Descripción del Utillaje

Texto(100)

No


Quantity

Cantidad a fabricar

Decimal

No


PreparationTime

Tiempo de preparación previsto (segundos)

Decimal

No


ProductionTime

Tiempo de producción previsto (segundos)

Decimal

No


ClientName

Nombre del Cliente

Texto

No


MachineCode

Código de la Máquina

Texto(50)

No


MachineName

Nombre de la Máquina

Texto(100)

No


Status

Estado de la OT

Entero

No

0: Abierta

1: Cerrada

Comment

Observaciones de la OT

Texto

No


ExternalCodeCódigo externo de la OTTexto(50)NoSi se indica, entonces se entenderá como OT única la unión de Number, Phase (si hay) y ExternalCode

LastModified

Fecha/hora de última modificación

Fecha/Hora

No



Órdenes de trabajo por trabajador

Nombre campo

Descripción

Tipo

Requerido

Observaciones

OTNumber

Número de OT

Texto(50)


PhaseCode

Código de la Fase

Texto(50)

No


ReferenceCode

Código de la Referencia

Texto(128)


WorkerCode

Código del trabajador

Texto(20)


StartDate

Fecha/hora de inicio prevista del trabajo

Fecha/Hora


EndDate

Fecha/hora de fin prevista del trabajo

Fecha/Hora


Quantity

Cantidad a fabricar

Decimal

No


Comment

Observaciones

Texto

No


OTExternalCodeCódigo externo de la OTTexto(50)NoSi se indica, entonces se entenderá como OT única la unión de Number, Phase (si hay) y ExternalCode

Dependencias órdenes de trabajo

Nombre campo

Descripción

Tipo

Requerido

Observaciones

OTNumber

Número de OT

Texto(50)


PhaseCode

Código de la Fase

Texto(50)


ReferenceCode

Código de la Referencia

Texto(128)


OTNumberRequired

Número de OT requerida

Texto(50)


PhaseCodeRequired

Código de la Fase requerida

Texto(50)


ReferenceCodeRequired

Código de la Referencia requerida

Texto(128)


Blocking

Dependencia bloqueante

Char

(Y/N)

Trabajadores

Nombre campo

Descripción

Tipo

Requerido

Observaciones

Name

Nombre del trabajador

Texto


WorkerCode

Código del trabajador

Texto(20)


Email

Correo electrónico del trabajador

Texto(256)


Language

Idioma del trabajador

Entero

No

1: Català

2: Español

3: English

4: Français

5: Português

Tiempos de Ciclo

Nombre campo

Descripción

Tipo

Requerido

Observaciones

MachineCode

Código de máquina

Texto(50)


ReferenceCode

Código de la Referencia

Texto(128)


CycleTime

Tiempo de ciclo (segundos)

Decimal


MachineName

Nombre de la Máquina

Texto(100)

No


ReferenceDescriptionDescripción de la ReferenciaTextoNo
MachineCyclesCiclos de máquinaEnteroNoSi no se indica, se asignará 1
UnitsCycleCiclos por unidadEnteroNoSi no se indica, se asignará 1

Importante

  • En el caso de incorporar el campo LastModified, los registros deberán venir ordenados por esa fecha de forma ascendente.
  • Archivos: los campos Fecha/Hora deben tener el siguiente formato: yyyy-MM-dd HH:mm:ss
  • OT: en el caso de no tener el campo Status, se cerrará la OT en cuanto no se detecte en los registros recibidos. Por lo que, en caso de no tener Status, deben enviarse siempre todas las OTs en curso en un mismo archivo o en una misma consulta SQL.
  • Los campos de tipo Texto sin longitud indicada, no tienen límite definido.
  • Los campos de tipo Decimal, sólo pueden tener separador de decimales (se acepta el punto y la coma), pero no pueden tener separador de millares.



Campos en Output


Producción General

Si se utiliza la salida SQL estándar, la tabla es EConnectGP

Nombre campo

Descripción

Tipo

KeyIdIdentificador únicoTexto(40)

ReferenceCode

Código de la referencia

Texto(128)

WorkerName

Nombre del operario

Texto

WorkerCode

Código del operario

Texto(20)

DeviceNameNombre del dispositivoTexto(75)
MachineNameNombre de la máquinaTexto(100)
MachineCodeCódigo de la máquinaTexto(50)
MachineExternalCodeCódigo externo de la máquinaTexto(50)
PhaseCodeCódigo de la faseTexto(50)
PhaseDescriptionDescripción de la faseTexto(100)
StartDateFecha/Hora de inicio de la producciónFecha/Hora
EndDateFecha/Hora de finalización de la producciónFecha/Hora
DurationDuración de la producción (segundos)Decimal
CountOKNúmero de elementos contados como OKDecimal
CountNGNúmero de elementos contados como NO OKDecimal
ReportedCountOKNúmero de elementos informados como OK por el operarioDecimal
ReportedCountNGNúmero de elementos informados como NO OK por el operarioDecimal
QuantityCantidad de la OTDecimal
ReportedQuantityNúmero de elementos informados totales (suma de ReportedCountOK y ReportedCountNG)Decimal
WorkOrderNúmero de la OTTexto(50)
WOExternalCodeCódigo externo de la OTTexto(50)
NumberOfStopsNúmero de paradasEntero
OeeOEEDecimal
CycleTimeTiempo de cicloDecimal
IdealCycleTimeTiempo de ciclo idealDecimal
IsProductionXML/JSON: true/false
BD/CSV: Y indica que és un registro de producción, si es N indica que és de preparación

Bool/Char

PlannedPiecesNúmero de elementos planificadosDecimal
PreparationPiecesNúmero de elementos en preparaciónDecimal
PreparationTimeTiempo de preparación (segundos)Entero

Registro de rechazos en producción

Si se utiliza la salida SQL estándar, la tabla es EConnectNC

Nombre de campoDescripciónTipo
KeyIdIdentificador único de la producción (tabla EConnectGP)Texto(40)
WorkOrderNúmero de la OTTexto
RejectionTypeIdIdentificador del tipo de rechazoTexto
RejectionTypeCodeCódigo del tipo de rechazoTexto
QuantityCantidad rechazada o asignada a un motivo de rechazoDecimal
IsProductionY indica que és un registro de producción, si es N indica que és de preparaciónChar


Usuarios

Si se utiliza la salida SQL estándar, la tabla es EConnectUS

Nombre campo

Descripción

Tipo

KeyIdIdentificador únicoTexto(40)

UserName

Nombre de usuario

Texto(256)

Name

Nombre del usuario

Texto

Email

E-mail del usuario

Texto(256)

IsActiveUsuario activo (Y: activo, N: no activo)Char
LanguageId

Idioma del usuario:

1: Català

2: Español

3: English

4: Français

5: Português

Entero
PhoneNumberNúmero de teléfono del usuarioTexto
WorkerCodeCódigo como trabajadorTexto(20)
UpdatedFecha/Hora de última actualizaciónFecha/Hora
Claims

Tipos de perfil separados por coma:

  • owner
  • admin
  • responsable
  • worker
  • user
Texto(50)


Máquinas

Si se utiliza la salida SQL estándar, la tabla es EConnectMA

Nombre campo

Descripción

Tipo

KeyIdIdentificador únicoTexto(40)

Name

Nombre de la máquina

Texto(100)

Code

Código de la máquina

Texto(50)

ExternalCodeCódigo externo de la máquinaTexto(50)
Created

Fecha/Hora de creación de la máquina

Fecha/Hora
UpdatedFecha/Hora de última actualización de los datos de la máquinaFecha/Hora
ModelModelo de la máquinaTexto
MachineUsePara qué se usa la máquinaTexto
Comment

Observaciones de la máquina

Texto

TimeToStopTiempo que debe pasar sin recibir producciones para interpretar que la máquina está Parada (segundos)Entero
MeasureUnitId

Unidad de medida de su producción:

  1. Piezas
  2. Metros
  3. Litros
Texto(50)
TimeToSuggestStopTiempo que debe pasar sin recibir producciones para que la Parada deba ser justificada por el operario (minutos)Entero

Programas

Se puede descargar el sincronizador des de este enlace:

File list

Hay dos formas de usar el sincronizador:

  1. Servicio de Windows
  2. Aplicación de consola

Servicio de Windows

Debe instalarse el servicio de la siguiente forma (archivo econnect.sync.service.exe):

  1. Abrir línea de comandos (o símbolo de sistema) con permisos de Administrador
    cmd
  2. Ir a la carpeta del framework .NET (la versión debe ser v4.0.xxxxx)
    cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
  3. Usar el programa InstallUtil para instalar el servicio
    InstallUtil.exe C:\ruta\econnect.sync.service.exe
  4. Si todo ha ido bien, tendremos el nuevo servicio instalado
  5. Una vez esté configurado, deberá iniciarse el servicio


Aplicación de consola

Debe ejecutarse el archivo econnect.sync.console.exe y dejar la ventana abierta.


  • Sin etiquetas