private boolean importReportLineSource() {
    // Primero, debemos actualizar el valor de las lineas de informe con el id del reportLine
    String sql =
        "update i_reportlineset set pa_reportline_id= ( select rl.pa_reportline_id from pa_reportline rl, pa_reportlineset rls 	where rl.pa_reportlineset_id=rls.pa_reportlineset_id 	and rl.name=trim(i_reportlineset.name) and rls.name=trim(i_reportlineset.rls_name) and rl.ad_client_id=i_reportlineset.ad_client_id and rl.ad_org_id=i_reportlineset.ad_org_id and rls.ad_client_id=i_reportlineset.ad_client_id and rls.ad_org_id=i_reportlineset.ad_org_id) where isReportSource='Y'";
    // String sql = "update i_reportlineset ir set ir.pa_reportline_id= ( select rl.pa_reportline_id
    // from pa_reportline rl where rl.pa_reportlineset_id=ir.pa_reportlineset_id 	and
    // rl.name=trim(ir.name) and rl.ad_client_id=ir.ad_client_id and rl.ad_org_id=ir.ad_org_id)
    // where ir.isReportSource='Y'";
    if (DB.executeUpdate(sql, trxName) == -1) {
      log.log(Level.SEVERE, "Error actualizado el pa_reportline_id de las fuentes");
      return false;
    }
    // Establecemos la cuenta
    sql =
        "update i_reportlineset as ir set c_elementvalue_id= ( select ev.c_elementvalue_id from c_elementvalue ev where ev.issummary='Y' and ev.value=trim(ir.ev_value) and ev.ad_org_id=ir.ad_org_id) where ir.isReportSource='Y' and ir.ev_value is not null and ir.c_elementvalue_id is null and ir.rs_elementType='AC'";
    if (DB.executeUpdate(sql, trxName) == -1) {
      log.log(Level.SEVERE, "Error actualizado el c_elementvalue_id de las fuentes");
      return false;
    }

    sql =
        "update i_reportlineset as ir set i_isimported='E', i_errorMsg='fuente invalida' where ir.isReportSource='Y' and (ir.c_elementvalue_id is null or ir.c_elementvalue_id=0) and ir.rs_elementtype='AC' and (ir.pa_reportline_id is null or ir.pa_reportline_id=0)";
    if (DB.executeUpdate(sql, trxName) == -1) {
      log.log(Level.SEVERE, "Error marcando fuentes erroneas.");
      return false;
    }

    sql =
        "select * from i_reportlineset as ir where ir.isReportSource='Y' and ir.I_isImported='N' and ir.rs_elementtype='AC'";
    try {
      PreparedStatement pstmt = DB.prepareStatement(sql, trxName);
      ResultSet rs = pstmt.executeQuery();
      while (rs.next()) {
        X_PA_ReportSource r = new X_PA_ReportSource(getCtx(), 0, trxName);
        X_I_ReportLineSet ir = new X_I_ReportLineSet(getCtx(), rs, trxName);

        r.set_TrxName(trxName);
        r.setElementType(r.ELEMENTTYPE_Account);
        r.setC_ElementValue_ID(ir.getC_ElementValue_ID());
        if (ir.getEv_Value().trim().equals("395")) {
          log.log(Level.SEVERE, "PA_ReportLine_ID: " + ir.getPA_ReportLine_ID());
        }
        r.setPA_ReportLine_ID(ir.getPA_ReportLine_ID());

        if (r.save(trxName) == false) {
          log.log(
              Level.SEVERE,
              "Error creando las fuentes del informe:"
                  + ir.getEv_Value()
                  + ": "
                  + r.getPA_ReportLine_ID());
          return false;
        }

        ir.setPA_ReportSource_ID(r.getPA_ReportSource_ID());
        ir.setI_IsImported(true);

        if (ir.save(trxName) == false) {
          log.log(
              Level.SEVERE, "Error guardando el PA_ReportSource_ID en la tabla de importacion.");
          return false;
        }
      }
    } catch (SQLException e) {
      log.log(Level.SEVERE, "Error recorriendo las lineas de fuente.");
      return false;
    }

    return true;
  }
  private boolean importReportLines() {
    String sql =
        "select * from i_reportlineset rls where "
            + "rls.pa_reportlineset_id is not null and rls.pa_reportline_id is null"
            + " and rls.isReportSource='N' ";

    try {
      PreparedStatement pstmt = DB.prepareStatement(sql, trxName);
      ResultSet rs = pstmt.executeQuery();
      while (rs.next()) {

        // Creamo El conjunto de lineas del informe
        CReportLine rl = new CReportLine(getCtx(), 0, trxName);

        X_I_ReportLineSet ir = new X_I_ReportLineSet(getCtx(), rs, get_TrxName());

        rl.setName(ir.getName());
        rl.setDescription(ir.getDescription());
        rl.setPA_ReportLineSet_ID(ir.getPA_ReportLineSet_ID());
        rl.setSeqNo(ir.getSeqNo());
        rl.setPrintLineNo(ir.getPrintLineNo());
        rl.setFunc(ir.getFunc());
        rl.setLineType(ir.getLineType());
        rl.setPostingType(ir.getPostingType());
        rl.setAmountType(ir.getAmountType());
        rl.setIsPrinted(ir.isPrinted());
        rl.setChangeSign(ir.isChangeSign());
        rl.setNegativeAsZero(ir.isNegativeAsZero());
        rl.setIsEverPrinted(ir.isEverPrinted());
        rl.setIsPageBreak(ir.isPageBreak());
        rl.setIsBold(ir.isBold());
        rl.setIndentLevel(ir.getIndentLevel());

        // Grabamos la linea importada
        if (rl.save() == false) {
          log.log(Level.SEVERE, "Error grabando la linea de informe.");
          return false;
        }

        // Guardamos el PA_ReportLine_ID en la tabla de importacion
        ir.setPA_ReportLine_ID(rl.getPA_ReportLine_ID());
        ir.setI_IsImported(true);

        if (ir.save(trxName) == false) {
          log.log(Level.SEVERE, "Error guardando el PA_ReportLine_ID en la tabla de importacion.");
          return false;
        }
      }
    } catch (SQLException e) {
      log.log(Level.SEVERE, "Fallo al crear el conjunto de lineas de informe: " + e);
      return false;
    }
    return true;
  }