__CHECK_OBJECT_VERSION("Nie poprawili¶my danych bo miale¶ star± wersję obiektu. Odswież swojego klienta i sprobuj jeszcze raz")

__SEND_MESG_DEBUG("1")


NProps = coa_GetElementCount(cnx, par_props);

__SEND_MESG_DEBUG("NProps=%d",NProps)

NValues = coa_GetElementCount(cnx, new_values);

__SEND_MESG_DEBUG("NValues=%d",NValues)


__ASSERT(NProps=NValues,"the number of properties doesn't match the number of values")
__ASSERT(NProps>0,"no properties, no values")

__SEND_MESG_DEBUG("4")


for (i=0;i<NProps;i++)
{
new_value_coded = cou_buildEncodedSQL(cnx, coa_GetElement(cnx, new_values, i));
strSet = ap_pstrcat(p, strSet, "\"", coa_GetElement(cnx, par_props, i), "\"=\'", new_value_coded, "\', ",NULL);
}

__SEND_MESG_DEBUG("5")


__CREATE_QUERY("UPDATE co_%s_%s SET %sversion=version+%d WHERE id=%d ",
par_area, par_class, strSet, NProps, par_id);
__SQL_EXEC
__ASSERT(ok, "Error during updating data, probably there is no such object or prop: par_area '%s' ,par_class '%s', par_id %d",
par_area, par_class, par_id)

puta_classes[0] = par_class;
puta_ids[0] = par_id;

for (i=0; i<NProps; i++) cou_queueActionX( cnx, par_class, puta_classes, puta_ids, CO_OP_UPDATE, coa_GetElement(cnx, par_props, i), coa_GetElement(cnx, new_values, i), NULL);
cou_queueActionX( cnx, par_class, puta_classes, puta_ids, CO_OP_UPDATE, "version",ap_psprintf(p,"%d",cur_version+NProps),NULL);