es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La consulta SQL funciona en EA, pero no funciona con C# en la API.

He creado un script en C# que construye una consulta sql con datos de un Excel y luego consulta el repositorio EA.

sqlquery_part1A = "select obj.object_id from (t_object obj inner join t_connector j on (obj.Object_ID=j.end_Object_ID)) inner join t_object endobj on (j.start_Object_ID=endobj.Object_ID) where obj.alias = '" + adu_alias.Replace ("'", "''") + "' and endobj.Name = '" + datastream + "' and obj.Name = '" + adu_name + "'";
int element_count = repository.GetElementSet (sqlquery_part1A, 2). Count;

La consulta funciona bien, excepto cuando uno de los campos que provienen de Excel tiene saltos de línea. Por ejemplo:

"global_sla_l2p_nrt.*.nc(|.gz)$ (Product: L2P-SLA NRT),

global_swh_l2p_nrt.*.nc(|.gz)$ (Product: L2P-SWH NRT),

global_sla_l2p_stc.*.nc(|.gz)$ (Product: L2P-SLA STC)"

Cuando esto sucede, el script no encuentra entradas en el repositorio. Sin embargo, si tomo la misma consulta exacta a EA, devuelve una entrada.

Aquí hay un ejemplo de una consulta:

select obj.object_id from (t_object obj inner join t_connector j on (obj.Object_ID=j.end_Object_ID)) inner join t_object endobj on (j.start_Object_ID=endobj.Object_ID) where obj.alias = 'global_sla_l2p_nrt.*.nc(|.gz)$ (Product: L2P-SLA NRT),

global_swh_l2p_nrt.*.nc(|.gz)$ (Product: L2P-SWH NRT),

global_sla_l2p_stc.*.nc(|.gz)$ (Product: L2P-SLA STC)' and endobj.Name = 'DIS-ING.FTP' and obj.Name = 'L2P Service products'

¿Alguien puede ayudarme?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Estoy teniendo un problema con un script C# que creé que construye una consulta SQL con datos de una hoja de Excel y luego consulta el repositorio de EA. La consulta funciona bien, excepto cuando uno de los campos que provienen de la hoja de Excel tiene saltos de línea. Por ejemplo, el campo puede contener lo siguiente:

    global_sla_l2p_nrt.*\.nc(|\.gz)$ (Producto: L2P-SLA NRT), 
    global_swh_l2p_nrt.*\.nc(|\.gz)$ (Producto: L2P-SWH NRT), 
    global_sla_l2p_stc.*\.nc(|\.gz)$ (Producto: L2P-SLA STC)
    

    Cuando esto sucede, el script no encuentra entradas en el repositorio. Sin embargo, si tomo la misma consulta hasta EA, devuelve una entrada. Aquí hay un ejemplo de una consulta:

    select obj.object_id from (t_object obj inner join t_connector j on (obj.Object_ID=j.end_Object_ID)) inner join t_object endobj on (j.start_Object_ID=endobj.Object_ID) where obj.alias = 'global_sla_l2p_nrt.*\.nc(|\.gz)$ (Producto: L2P-SLA NRT), 
    global_swh_l2p_nrt.*\.nc(|\.gz)$ (Producto: L2P-SWH NRT), 
    global_sla_l2p_stc.*\.nc(|\.gz)$ (Producto: L2P-SLA STC)' and endobj.Name = 'DIS-ING.FTP' and obj.Name = 'Productos del servicio L2P'
    

    ¿Alguien puede ayudarme con este problema?

Comments are closed.