Desde ayer, nuestros módulos de Invantive Cloud App Online fallan en Exact Online Bélgica con el código de error itgenefd012.
El mensaje de error es:
itgenefd012
Solo se puede especificar una longitud máxima para las columnas de texto y bytearray.
La columna ‘AccountContact’ tiene un tipo de dato ‘guid’ y una longitud máxima de 60.
Intenté aislar esto con dos pequeñas pruebas de App Online.
Prueba 1, sin tablas de Exact Online:
begin
cloud_http.set_use_template(true);
cloud_http.set_template_step_name('Prueba de humo');
cloud_http.append_line_to_response_body_text('<form>');
cloud_http.append_line_to_response_body_text('<ul>');
cloud_http.append_line_to_response_body_text('<li>OK - el código del módulo se ejecuta correctamente.</li>');
cloud_http.append_line_to_response_body_text('</ul>');
cloud_http.append_line_to_response_body_text('</form>');
end;
Esta prueba funciona correctamente.
Prueba 2, con solo una consulta sencilla de Exact Online:
begin
cloud_http.set_use_template(true);
cloud_http.set_template_step_name('Prueba de punto de acceso de Exact');
cloud_http.append_line_to_response_body_text('<form>');
cloud_http.append_line_to_response_body_text('<ul>');
for r
in
( select count(\*) as cantidad
from ExactOnlineREST.Logistics.Items@eol
where Division = 153543
)
loop
cloud_http.append_line_to_response_body_text('<li>Items@eol OK - cantidad: ' || to_char(r.cantidad) || '</li>');
end loop;
cloud_http.append_line_to_response_body_text('</ul>');
cloud_http.append_line_to_response_body_text('</form>');
end;
Esta segunda prueba falla inmediatamente con el mismo mensaje de AccountContact.
Destacable:
- la consulta no usa
AccountContact; - la consulta no usa
SalesOrders; - la consulta no usa
PurchaseOrders; - la consulta no usa
Accounts; - la consulta solo usa
Items@eol; - una prueba de App Online sin
@eolsí funciona.
Parece que el error ocurre tan pronto se cargan los metadatos de Exact Online REST, incluso antes de que se ejecute la consulta real.
Entorno:
- Invantive Cloud
- Exact Online Bélgica
- módulo App Online
Pregunta:
¿Podría esto indicar metadatos, caché o información del contenedor de datos errónea para el conector de Exact Online? Parece como si AccountContact estuviera registrado en algún lugar como un guid con una longitud máxima de 60, aunque una columna guid no debe tener una longitud máxima.