#34170
Javier Ader
Participante

mmmm bueno, no, es al revés de lo que dije… debe ser is “Sales Order Transaction”; e.d transacción de ventas (aunque de nuevo el nombre es medio raro… no necesariamente hay una “venta”); o “saliente” o “generalmente realizada desde nosotros hacia nuestros clientes”.

El tema es que ahora veo estas lineas en MInOut.beforeSave (en realidad eran las que me hicieron repensar por enésima vez la semántica detrás de isSOTrx…):

Code:
//Validar número de doccumento para remitos de salida
if (!isSOTrx() && existsDocNumber(false)) {
log.saveError(“ShipmentNumberAlredyExists”, “”);
return false;
}

Que supongo que lo que esta queriendo chequear es que no se repitan los numeros de nuestros remitos (los generados por nuestros proveedores pueden potencialmente tener el mismo número).
OK, pero ahora este código en MInOut.completeIt

Code:
// if (!this.get_Value(“DeliveryRule”).toString().equalsIgnoreCase(“F”) && isSOTrx()) {
if (!getDeliveryRule().equalsIgnoreCase(DELIVERYRULE_Force) && isSOTrx()) {
//Si la regla de albaranado es distinta de F y ademas es un albarán de salida

Que supongo que lo que hace es no permitir remitos de salidas con regla de entrega no forzada cuando no hay stock….
Bueno, en el primero usan !isSOTrx() y en el segundo isSOTrx() para determinar si es de salida! O los comentarios están mal o uno de los secciones tienen un error (me da la sensación es que el primero; no debería estar negado isSOTrx() )… o me marié y el error lo tengo yo :(