diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index be567a85..20122d9b 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -3053,8 +3053,8 @@ SELECT ALBARANES_CLIENTE.FECHA_ALBARAN, V_ALB_CLI_DETALLES.ID_ALMACEN, V_ALB_CLI_DETALLES.ID_ARTICULO, - CASE WHEN V_ALB_CLI_DETALLES.CANTIDAD < 0 THEN 'Entrada' - ELSE 'Salida' END, + CASE WHEN V_ALB_CLI_DETALLES.CANTIDAD < 0 THEN 'E' + ELSE 'S' END, (-1)*V_ALB_CLI_DETALLES.CANTIDAD, CASE WHEN ALBARANES_CLIENTE.IMPORTE_TOTAL < 0 THEN 'Orden de devolución de cliente ' || ALBARANES_CLIENTE.REFERENCIA ELSE 'Albarán de cliente ' || ALBARANES_CLIENTE.REFERENCIA END @@ -3080,8 +3080,8 @@ SELECT ALBARANES_PROVEEDOR.FECHA_ALBARAN, V_ALB_PROV_DETALLES.ID_ALMACEN, V_ALB_PROV_DETALLES.ID_ARTICULO, - CASE WHEN V_ALB_PROV_DETALLES.CANTIDAD < 0 THEN 'Salida' - ELSE 'Entrada' END, + CASE WHEN V_ALB_PROV_DETALLES.CANTIDAD < 0 THEN 'S' + ELSE 'E' END, V_ALB_PROV_DETALLES.CANTIDAD, CASE WHEN ALBARANES_PROVEEDOR.IMPORTE_TOTAL < 0 THEN 'Orden de devolución ' || ALBARANES_PROVEEDOR.REFERENCIA ELSE 'Albarán de proveedor ' || ALBARANES_PROVEEDOR.REFERENCIA END @@ -3103,9 +3103,7 @@ TIPO_MOVIMIENTO, CANTIDAD, CAUSA) AS -SELECT FECHA_MOVIMIENTO, ID_ALMACEN, ID_ARTICULO, -CASE WHEN TIPO = 'E' THEN 'Entrada' -ELSE 'Salida' END, +SELECT FECHA_MOVIMIENTO, ID_ALMACEN, ID_ARTICULO, TIPO, CASE WHEN TIPO = 'S' THEN (-1)* CANTIDAD ELSE CANTIDAD END, 'Regularización por - ' || CAUSA diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index 5f18b27b..cc559f7e 100644 Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ diff --git a/Source/Modulos/Historico de movimientos/Views/uViewHistoricoMovimientos.dfm b/Source/Modulos/Historico de movimientos/Views/uViewHistoricoMovimientos.dfm index 9423fe86..b4abc2fd 100644 --- a/Source/Modulos/Historico de movimientos/Views/uViewHistoricoMovimientos.dfm +++ b/Source/Modulos/Historico de movimientos/Views/uViewHistoricoMovimientos.dfm @@ -44,8 +44,12 @@ inherited frViewHistoricoMovimientos: TfrViewHistoricoMovimientos item Description = 'Entrada' ImageIndex = 3 - Tag = 1 - Value = 'Entrada' + Value = 'E' + end + item + Description = 'Salida' + ImageIndex = 2 + Value = 'S' end> end object cxGridViewFAMILIA: TcxGridDBColumn diff --git a/Source/Modulos/Inventario/Controller/uInventarioController.pas b/Source/Modulos/Inventario/Controller/uInventarioController.pas index 6457b0a2..8a166f57 100644 --- a/Source/Modulos/Inventario/Controller/uInventarioController.pas +++ b/Source/Modulos/Inventario/Controller/uInventarioController.pas @@ -33,7 +33,7 @@ type function ExtraerSeleccionados(AArticulos: IBizDetalleReservas) : IBizDetalleReservas; overload; procedure Anadir(AArticulos, AInventario : IBizInventario); - function Guardar(AArticulos : IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String): Boolean; + function Guardar(AArticulos : IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String; AValidar:Boolean = True): Boolean; procedure EntradaArticulosLibre(AInventario: IBizInventario; Const CodigoAlmacenDestino: Integer); procedure SalidaArticulosLibre(AInventario: IBizInventario; Const CodigoAlmacenOrigen: Integer); @@ -140,7 +140,7 @@ type procedure VerReservas(AArticulo: IBizInventario); - function Guardar(AArticulos : IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String): Boolean; + function Guardar(AArticulos : IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String; AValidar:Boolean = True): Boolean; function Liberar(AInventario : IBizInventario): Boolean; overload; end; @@ -1134,14 +1134,14 @@ begin // Para así poder utiliza ID para la inserción de movimientos end; -function TInventarioController.Guardar(AArticulos: IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String): Boolean; +function TInventarioController.Guardar(AArticulos: IBizInventario; const FechaMovimiento: TDateTime; const CausaMovimiento: String; AValidar:Boolean = True): Boolean; begin Result := False; if not Assigned(AArticulos) then raise Exception.Create ('Artículos no asignados'); - if Validar(AArticulos) then + if AValidar and Validar(AArticulos) then //Evaluacion perezosa begin ShowHourglassCursor; try diff --git a/Source/Modulos/Inventario/Views/uViewInventario.dfm b/Source/Modulos/Inventario/Views/uViewInventario.dfm index 8f9ace5b..4bc302db 100644 --- a/Source/Modulos/Inventario/Views/uViewInventario.dfm +++ b/Source/Modulos/Inventario/Views/uViewInventario.dfm @@ -157,8 +157,39 @@ inherited frViewInventario: TfrViewInventario Caption = 'Todos los almacenes' end end - inherited pnlAgrupaciones: TTBXDockablePanel - ExplicitWidth = 607 + inherited frViewFiltroBase1: TfrViewFiltroBase + inherited TBXDockablePanel1: TTBXDockablePanel + inherited dxLayoutControl1: TdxLayoutControl + inherited txtFiltroTodo: TcxTextEdit + Style.LookAndFeel.SkinName = '' + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.SkinName = '' + ExplicitWidth = 510 + Width = 510 + end + inherited edtFechaIniFiltro: TcxDateEdit + Style.LookAndFeel.SkinName = '' + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.SkinName = '' + end + inherited edtFechaFinFiltro: TcxDateEdit + Style.LookAndFeel.SkinName = '' + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.SkinName = '' + end + inherited eLista: TcxComboBox + Style.LookAndFeel.SkinName = '' + StyleDisabled.LookAndFeel.SkinName = '' + StyleFocused.LookAndFeel.SkinName = '' + StyleHot.LookAndFeel.SkinName = '' + ExplicitWidth = 215 + Width = 215 + end + end + end end inherited dxComponentPrinter: TdxComponentPrinter inherited dxComponentPrinterLink: TdxGridReportLink @@ -179,6 +210,8 @@ inherited frViewInventario: TfrViewInventario Font.Style = [] TextColor = clRed end + object cxStyleArticuloConStock: TcxStyle + end end inherited GridPNGImageList: TPngImageList PngImages = < diff --git a/Source/Modulos/Inventario/Views/uViewInventario.pas b/Source/Modulos/Inventario/Views/uViewInventario.pas index 65b98f90..43df3f17 100644 --- a/Source/Modulos/Inventario/Views/uViewInventario.pas +++ b/Source/Modulos/Inventario/Views/uViewInventario.pas @@ -48,6 +48,7 @@ type cxGridViewCOSTE_UNIDADES: TcxGridDBColumn; cxGridViewID: TcxGridDBColumn; cxGridViewID_ARTICULO: TcxGridDBColumn; + cxStyleArticuloConStock: TcxStyle; procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: TcxGridLevel); procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; @@ -128,7 +129,9 @@ begin IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_INVENTARIOSTOCK).Index; AStock := ARecord.DisplayTexts[IndiceCol]; if (AStock < 0) then - AStyle.TextColor := cxStyleArticuloSinStock.TextColor; + AStyle.TextColor := cxStyleArticuloSinStock.TextColor + else + AStyle.TextColor := cxStyleArticuloConStock.TextColor; end; end; diff --git a/Source/Modulos/Relaciones/Pedidos de proveedor - Albaranes de proveedor/uGenerarAlbaranesProvUtils.pas b/Source/Modulos/Relaciones/Pedidos de proveedor - Albaranes de proveedor/uGenerarAlbaranesProvUtils.pas index c4754965..ee623f35 100644 --- a/Source/Modulos/Relaciones/Pedidos de proveedor - Albaranes de proveedor/uGenerarAlbaranesProvUtils.pas +++ b/Source/Modulos/Relaciones/Pedidos de proveedor - Albaranes de proveedor/uGenerarAlbaranesProvUtils.pas @@ -1,3 +1,72 @@ +{$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O+,P+,Q-,R-,S-,T-,U-,V+,W-,X+,Y+,Z1} +{$MINSTACKSIZE $00004000} +{$MAXSTACKSIZE $00100000} +{$IMAGEBASE $00400000} +{$APPTYPE GUI} +{$WARN SYMBOL_DEPRECATED ON} +{$WARN SYMBOL_LIBRARY ON} +{$WARN SYMBOL_PLATFORM ON} +{$WARN SYMBOL_EXPERIMENTAL ON} +{$WARN UNIT_LIBRARY ON} +{$WARN UNIT_PLATFORM ON} +{$WARN UNIT_DEPRECATED ON} +{$WARN UNIT_EXPERIMENTAL ON} +{$WARN HRESULT_COMPAT ON} +{$WARN HIDING_MEMBER ON} +{$WARN HIDDEN_VIRTUAL ON} +{$WARN GARBAGE ON} +{$WARN BOUNDS_ERROR ON} +{$WARN ZERO_NIL_COMPAT ON} +{$WARN STRING_CONST_TRUNCED ON} +{$WARN FOR_LOOP_VAR_VARPAR ON} +{$WARN TYPED_CONST_VARPAR ON} +{$WARN ASG_TO_TYPED_CONST ON} +{$WARN CASE_LABEL_RANGE ON} +{$WARN FOR_VARIABLE ON} +{$WARN CONSTRUCTING_ABSTRACT ON} +{$WARN COMPARISON_FALSE ON} +{$WARN COMPARISON_TRUE ON} +{$WARN COMPARING_SIGNED_UNSIGNED ON} +{$WARN COMBINING_SIGNED_UNSIGNED ON} +{$WARN UNSUPPORTED_CONSTRUCT ON} +{$WARN FILE_OPEN ON} +{$WARN FILE_OPEN_UNITSRC ON} +{$WARN BAD_GLOBAL_SYMBOL ON} +{$WARN DUPLICATE_CTOR_DTOR ON} +{$WARN INVALID_DIRECTIVE ON} +{$WARN PACKAGE_NO_LINK ON} +{$WARN PACKAGED_THREADVAR ON} +{$WARN IMPLICIT_IMPORT ON} +{$WARN HPPEMIT_IGNORED ON} +{$WARN NO_RETVAL ON} +{$WARN USE_BEFORE_DEF ON} +{$WARN FOR_LOOP_VAR_UNDEF ON} +{$WARN UNIT_NAME_MISMATCH ON} +{$WARN NO_CFG_FILE_FOUND ON} +{$WARN IMPLICIT_VARIANTS ON} +{$WARN UNICODE_TO_LOCALE ON} +{$WARN LOCALE_TO_UNICODE ON} +{$WARN IMAGEBASE_MULTIPLE ON} +{$WARN SUSPICIOUS_TYPECAST ON} +{$WARN PRIVATE_PROPACCESSOR ON} +{$WARN UNSAFE_TYPE OFF} +{$WARN UNSAFE_CODE OFF} +{$WARN UNSAFE_CAST OFF} +{$WARN OPTION_TRUNCATED ON} +{$WARN WIDECHAR_REDUCED ON} +{$WARN DUPLICATES_IGNORED ON} +{$WARN UNIT_INIT_SEQ ON} +{$WARN LOCAL_PINVOKE ON} +{$WARN MESSAGE_DIRECTIVE ON} +{$WARN TYPEINFO_IMPLICITLY_ADDED ON} +{$WARN XML_WHITESPACE_NOT_ALLOWED ON} +{$WARN XML_UNKNOWN_ENTITY ON} +{$WARN XML_INVALID_NAME_START ON} +{$WARN XML_INVALID_NAME ON} +{$WARN XML_EXPECTED_CHARACTER ON} +{$WARN XML_CREF_NO_RESOLVE ON} +{$WARN XML_NO_PARM ON} +{$WARN XML_NO_MATCHING_PARM ON} unit uGenerarAlbaranesProvUtils; interface @@ -21,12 +90,13 @@ implementation {$R *.dfm} uses - Dialogs, uDialogUtils, uBizDetallesPedidoProveedor, uBizDetallesAlbaranProveedor, - uPedidosProveedorController, uDetallesPedidoProveedorController, - uAlbaranesProveedorController, uProveedoresController, - uDetallesAlbaranProveedorController, uControllerDetallesBase, - uBizAlbaranesProveedor, uBizContactos, schPedidosProveedorClient_Intf, - schAlbaranesProveedorClient_Intf, uInventarioController, uBizInventario; + Forms, Dialogs, uDialogUtils, uDataTableUtils, uBizDetallesPedidoProveedor, + uBizDetallesAlbaranProveedor, uPedidosProveedorController, + uDetallesPedidoProveedorController, uAlbaranesProveedorController, + uProveedoresController, uDetallesAlbaranProveedorController, + uControllerDetallesBase, uBizAlbaranesProveedor, uBizContactos, + schPedidosProveedorClient_Intf, schAlbaranesProveedorClient_Intf, + uInventarioController, uBizInventario; var dmGenerarAlbaranesCli: TdmGenerarAlbaranesProv; @@ -320,9 +390,25 @@ begin // En AInventarioRecibido tenemos la lista de articulos que hemos recibido y // que utilizaremos para hacer el albarán if AAlbaranesProveedorController.Anadir(AAlbaran, APedido.ID, AInventarioRecibido) then - AAlbaranesProveedorController.Ver(AAlbaran); + begin + AAlbaranesProveedorController.Guardar(AAlbaran); + AAlbaranesProveedorController.Ver(AAlbaran); + + //Si el pedido tiene obra de reserva, preguntamos si quiere automatizar el proceso de reserva de los materiales + if (APedido.ID_OBRA > 0) then + begin + if Application.MessageBox(PChar('Desea realizar la reserva del material recibido para la obra ' + APedido.NOMBRE_OBRA + ', asociada al pedido'), 'Atención', MB_YESNO) = IDYES then + begin + AInventarioRecibido.TipoMovimiento := tReserva; + AInventarioRecibido.IDAlmacenOrigen := APedido.ID_ALMACEN; + AInventarioRecibido.IDAlmacenDestino := APedido.ID_OBRA; + AInventarioController.Guardar(AInventarioRecibido, AAlbaran.FECHA_ALBARAN, ('Reserva para obra ' + APedido.NOMBRE_OBRA + ' del pedido ' + APedido.REFERENCIA), False); + end; + end; + end; finally AAlbaran := NIL; + AInventarioRecibido := Nil; end; end; diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES index 8dfd7e4d..d4d09001 100644 Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index 67484a0e..d7b364ea 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -14,7 +14,7 @@ BEGIN BEGIN VALUE "FileVersion", "1.2.8.0\0" VALUE "ProductVersion", "1.2.8.0\0" - VALUE "CompileDate", "viernes, 05 de septiembre de 2008 17:14\0" + VALUE "CompileDate", "lunes, 08 de septiembre de 2008 16:32\0" END END BLOCK "VarFileInfo"