Documento detalles tecnicos Web Service SDL

Anuncio
Todos los derechos reservados para XM S.A. ESP
Detalles técnicos Web Service.
Reporte de información de interrupciones.
interrupciones
Gerencia Centro Nacional de Despacho
Dirección Transacciones del Mercado
Mayo, 2010
Todos los derechos reservados XM S.A. E.S.P.
Contenido
Objetivo
1
Descripción del Servicio Web wsCargaEventosOr
1
Métodos del servicio
1
Reporte diario
1
Reporte trimestral
3
Consumo del Web Service
4
Configuración del cliente .NET 3.0 o superior
4
Peticiones al servicio
5
Cargar Reporte Diario
5
Carga Trimestral Eventos Causas
6
Respuesta del servicio
6
Cargar Reporte Diario
6
Carga Trimestral Eventos Causas
7
Consideraciones técnicas
7
Requisitos tecnológicos
7
Objetivo
El presente documento da a conocer los métodos expuestos por el Servicio Web wsCargaEventosOr, para
que los agentes puedan reportar información de eventos de interrupciones de transformadores y/o circuitos,
de los Sistemas de Distribución Local. Lo anterior, para dar cumplimiento al artículo 17 de la Resolución
CREG 043 de 2010.
Se explican los métodos expuestos por el Servicio Web wsCargaEventosOr, se definen los métodos
expuestos por el Servicio Web wsCargaEventosOr, sus parámetros y los valores de retorno.
Todos los derechos reservados XM S.A. E.S.P.
Descripción del Servicio Web wsCargaEventosOr
El servicio Web wsCargaEventosOr se crea con el fin de proveer a aplicaciones externas la posibilidad de
cargar los eventos de indisponibilidad de interrupciones de transformadores y/o circuitos de los Sistemas de
Distribución Local, teniendo como base lo definido en las Resoluciones CREG 097 de 2008 y 043 de 2010.
Métodos del servicio
Reporte diario
Permite cargar un reporte diario con los eventos de indisponibilidad de los activos del SDL.
Parámetros:
ArchivoCarga: El archivo debe ser en formato .csv, separado por comas, comprimido en .zip y convertido a
un arreglo de bytes (bytes[]).
El tamaño máximo del arreglo de bytes por petición es de 4096 kb. Este tamaño se establece para asegurar
que todos los agentes tengan la posibilidad de entregar la información. Si el archivo convertido al arreglo de
bytes supera esta cantidad, el archivo deberá particionarse de manera que cumpla con esta restricción, y
enviarse en varias peticiones.
Columnas: Las columnas definidas para el archivo son: CodigoEvento, FechaInicial, FechaFinal,
CodigoElemento, TipoElemento y EventoContinua.
Detalles técnicos – Servicio Web reporte SDL
2
CodigoEvento: Código del evento de interrupción. Debe ser único durante todo el transcurso del
evento de interrupción.
Si el evento a reportar no es de interrupción, es decir para los transformadores y/o circuitos no
afectados por interrupciones, el código del evento debe ser “NA”.
FechaInicial: Fecha y hora de inicio del evento. Si el evento a reportar no es de interrupción es decir
para los transformadores y/o circuitos no afectados por interrupciones, se debe reportar este campo
nulo. Si el evento a reportar viene de un día anterior, este campo debe ir nulo.
FechaFinal: Fecha y hora de fin del evento. Si el evento a reportar no es de interrupción es decir
para los transformadores y/o circuitos no afectados por interrupciones, se debe reportar este campo
nulo. Si el evento a reportar no termina el día del reporte, este campo debe ir nulo.
CodigoElemento: El código del transformador o circuito a reportar
TipoElemento: Dependiendo del elemento a reportar se debe colocar “T” si es un transformador y
Todos los derechos reservados XM S.A. E.S.P.
“P” si es un circuito
EventoContinua: Dependiendo si el evento continúa o no, se debe indicar con una letra “S” si
continúa y con la letra “N” si no.
A continuación se muestra un ejemplo del archivo a reportar:
CodigoEvento
FechaInicial
FechaFinal
CodigoElemento TipoElemento EventoContinua
E0000000006
14/04/2010 11:16:04 14/04/2010 12:16:35
05416
T
N
E0000000007
14/04/2010 11:19:08 14/04/2010 11:35:47
CK546
P
N
E0000000008
14/04/2010 15:16:43 Nulo
05422
T
S
E0000000002
Nulo 14/04/2010 14:35:23
CK986
P
N
NA
Nulo Nulo
731TR1
T
N
Para los transformadores y circuitos que no tuvieron interrupciones, se reporta un evento “NA”, es decir, no
aplica y adicionalmente los campos fecha inicial y fecha final van en Nulo.
En caso que un evento no finalice antes de la fecha de reporte, el campo fecha final va en Nulo y en la
columna EventoContinua, la letra S. Cuando el evento finalice, se reporta el mismo código de evento con
fecha inicial Nulo y la fecha fin correspondiente.
Detalles técnicos – Servicio Web reporte SDL
3
Para un mismo evento, los transformadores y/o circuitos afectados, tendrán la misma fecha inicial y pueden
tener fecha final diferente para cada elemento.
PeriodoCarga: Indica si la información a verificar es diaria o mensual. 0 para diaria, 1 para mensual.
TipoCarga: Indica si la información a cargar adiciona o sobrescribe información enviada. 0 para adicionar, 1
para sobrescribir. Ejemplo: Si se carga información diaria y se le da adicionar, el servicio cargará los eventos
como nuevos para el periodo seleccionado. Si se le da sobrescribir, borrará la información reportada bajo la
misma fecha y mismo periodo y adicionará la nueva.
Valor Retornado: Objeto con el campo “Estado” indicando el estado de la carga. “Correcto” si la carga fue
correcta, “Fallo” si la carga falló. Si la carga falló, se devolverá una lista de objetos con el código del evento y
el código del elemento en el cual falló la carga.
Todos los derechos reservados XM S.A. E.S.P.
Reporte trimestral
Permite cargar las causas de los eventos que son publicados en el Reporte Oficial publicado por el LAC y
marcar como eliminados los eventos que así lo ameriten.
Parámetros:
ArchivoCarga: El archivo debe ser en formato .csv, separado por comas y convertido a un arreglo de bytes
(bytes[]).
El tamaño máximo del arreglo de bytes por petición es de 4096 kb. Este tamaño se establece para asegurar
que todos los agentes tengan la posibilidad de entregar la información. Si el archivo convertido al arreglo de
bytes supera esta cantidad, el archivo deberá particionarse de manera que cumpla con esta restricción, y
enviarse en varias peticiones.
Columnas: Las columnas definidas para el archivo son: CodigoEvento, Causa, DescripcionCausa, y
DebeEliminarse.
CodigoEvento: Código del evento de indisponibilidad.
Causa: Código de la causa del evento de acuerdo con la codificación definida por el LAC.
DescripcionCausa: Descripción detallada de la causa del evento. Tamaño maximo del campo: 150
caracteres.
DebeEliminarse: Corresponde a una letra. Si el evento debe eliminarse se debe indicar la letra “S” y
si no es así se debe indicar la letra “N”
Detalles técnicos – Servicio Web reporte SDL
4
A continuación se muestra un ejemplo del archivo a reportar:
CodigoEvento
Causa
DescripcionCausa
DebeEliminarse
E0000000001
Cau0001
Mantenimiento
N
E0000000002
Cau0002
Terrorismo
S
E0000000003
Cau0003
Mantenimiento
N
TipoCarga: Indica si la información a cargar adiciona o sobrescribe información enviada. 0 para adicionar, 1
para sobrescribir. Ejemplo: Si se carga información diaria y se le da adicionar, el servicio cargará los eventos
Todos los derechos reservados XM S.A. E.S.P.
como nuevos para el periodo seleccionado. Si se le da sobrescribir, borrará la información reportada bajo la
misma fecha y mismo periodo y adicionará la nueva.
Valor Retornado: Objeto con el campo “Estado” indicando el estado de la carga. “Correcto” si la carga fue
correcta, “Fallo” si la carga falló. Si la carga falló, se devolverá una lista de objetos con el código del evento en
el cual falló la carga.
Consumo del Web Service
Las aplicaciones que van a consumir el web service deberán usar la siguiente URL vía SOAP:
http://xm.com.co/wsCargaEventosOr/wsCargaEventosOr.svc?wsdl
Nota: La ruta definitiva y la configuración del cliente están sujetos a cambios.
Configuración del cliente .NET 3.0 o superior
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_ICargaEventosOrService"
closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00"
sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false"
Todos los derechos reservados XM S.A. E.S.P.
Detalles técnicos – Servicio Web reporte SDL
5
hostNameComparisonMode="StrongWildcard" maxBufferSize="65536000"
maxBufferPoolSize="524288" maxReceivedMessageSize="65536000"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://xm.com.co/wsCargaEventosOr/wsCargaEventosOr.svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_ICargaEventosOrService"
contract="ICargaEventosOrService" name="BasicHttpBinding_ICargaEventosOrService" />
</client>
</system.serviceModel>
</configuration>
La ruta del servicio es sujeta a cambios y debe cambiarse dependiendo de la ruta final expuesta.
Peticiones al servicio
Cargar Reporte Diario
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<Action s:mustUnderstand="1"
xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">
http://XM.Reso097SDL.Core.Publicacion/ICargaEventosOrService/CargarReporteDiario</Action>
</s:Header>
<s:Body>
<CargarReporteDiario xmlns="http://XM.Reso097SDL.Core.Publicacion">
<archivoCargar>array[]</archivoCargar>
<PeriodoCarga>0</PeriodoCarga>
<TipoCarga>0</TipoCarga>
</CargarReporteDiario>
</s:Body>
</s:Envelope>
Detalles técnicos – Servicio Web reporte SDL
6
Carga Trimestral Eventos Causas
Todos los derechos reservados XM S.A. E.S.P.
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<Action s:mustUnderstand="1"
xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">
http://XM.Reso097SDL.Core.Publicacion/ICargaEventosOrService/CargaTrimestralEventosCausas</
Action>
</s:Header>
<s:Body>
<CargaTrimestralEventosCausas xmlns="http://XM.Reso097SDL.Core.Publicacion">
<archivoCargar>array[]</archivoCargar>
<TipoCarga>0</TipoCarga>
</ CargaTrimestralEventosCausas>
</s:Body>
</s:Envelope>
Respuesta del servicio
Cargar Reporte Diario
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header />
<s:Body>
<CargarReporteDiarioResponse xmlns="http://XM.Reso097SDL.Core.Publicacion">
<CargarReporteDiarioResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Reportes>
<Estado>estado</Estado>
<RegistroReporte>
<Evento>E0000001</Evento>
<Elemento>TRF0001</Elemento>
</RegistroReporte>
</Reportes>
</CargarReporteDiarioResult>
</CargarReporteDiarioResponse>
</s:Body>
</s:Envelope>
En el campo Estado en vez de lo marcado en rojo irá el estado de la carga. “Correcto” si cargo el archivo.
“Fallo” si fallo la carga.
En el objeto RegistroReporte van dos campos:
Detalles técnicos – Servicio Web reporte SDL
7
En el campo Linea irá el número de la línea que falló en la carga. En el mensaje irá el mensaje describiendo el
error.
Todos los derechos reservados XM S.A. E.S.P.
Carga Trimestral Eventos Causas
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header />
<s:Body>
<CargaTrimestralEventosCausasResponse xmlns="http://XM.Reso097SDL.Core.Publicacion">
<CargaTrimestralEventosCausasResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Reportes>
<Estado>estado</Estado>
<RegistroReporte>
<Evento>0</Evento>
</RegistroReporte>
</Reportes>
</CargaTrimestralEventosCausasResult>
</CargaTrimestralEventosCausasResponse>
</s:Body>
</s:Envelope>
En el campo Estado en vez de lo marcado en rojo irá el estado de la carga. “Correcto” si cargo el archivo.
“Fallo” si fallo la carga.
En el objeto RegistroReporte van dos campos:
En el campo Linea irá el número de la línea que falló en la carga. En el mensaje irá el mensaje describiendo el
error.
Consideraciones técnicas
Como el Web Service se utilizará para carga de eventos de indisponibilidad de todos los circuitos y
transformadores de los distintos agentes y se ha observado que los archivos a reportar pueden ser bastante
grandes, el archivo .csv debe ser comprimido en .zip y no puede superar 4086 kb de tamaño. Si el archivo
comprimido supera este tamaño, debe particionarse el archivo original de manera que cumpla esta restricción.
Además, en la configuración del servicio se recomienda tener los valores maxBufferSize = "65536000” y
maxReceivedMessageSize = "65536000".
Requisitos tecnológicos
Requisitos del Sistema
Detalles técnicos – Servicio Web reporte SDL
8
La descripción de hardware y software contenido en este documento se presenta como recomendaciones
genéricas. Factores individuales que pueden influenciar estos requisitos incluyen:
•
•
•
Desempeño de la red local donde la computadora cliente de trabajo está instalada.
Acceso a Internet que la computadora cliente esté utilizando para el acceso al sistema.
Configuración de hardware de la computadora cliente.
La siguiente tabla presenta recomendaciones generales sobre los requisitos de hardware y software para
utilizar el Sistema de Información para el reporte de la información de las interrupciones:
Todos los derechos reservados XM S.A. E.S.P.
Requisito
Recomendado
Computador/procesador
Intel Pentium o superior o equivalente
de otros fabricante
Memoria (RAM)
1 GB RAM o más
Tarjeta de red
100 Mbps FastEthernet o superior
Sistema operativo
Windows XP SP2 con todas las
actualizaciones disponibles
Explorador de Internet
Internet Explorer 7.0 o superior
Conexión a Internet
Banda Ancha
Conexión de red local
100 Mbps o superior
Descargar