Im seeing a strange behavior in the function "Delete (boolean bCheckForOccs)" on a CxnDef in a Report.

I have this code:

cxn = CxnExistenteEntre2Obj(objDef, objDef2, Constants.CT_SENDS_2, Constants.EDGES_OUT);

if (cxn.Delete(false)) {
// Deleted
} else {
// Not Deleted

function CxnExistenteEntre2Obj (objDefSource, objDefTarget, conexion, tipoConexion) {
    var conexionFinal = false;
    var listaConexiones = objDefSource.CxnListFilter(tipoConexion, conexion);

    for (var i = 0; i < listaConexiones.length; i++) {
        if (listaConexiones[i].TargetObjDef().IsEqual(objDefTarget)) {
            conexionFinal = listaConexiones[i];

    return conexionFinal;


If I start the Form Report and try to delete the Cxn with an open ocurrence the Delete() return false. This is OK, but when I delete successfully a Cxn without open occs and next I try to delete a Cxn with an open occ, instead of returning false returns true.

I doubt it is a bug, but I don't understand this behavior.

The CxnDef is the correct, and the same, I try to delete the cache too (Database.clearCaches()) and nothing...


Any Ideas ¿?


Many Thanks.

Tags: ARIS Report ARIS script