Fin de lógica de reservas y activación hostorico de moviemitnos

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@579 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
roberto 2008-09-08 15:01:03 +00:00
parent 17b4aea72d
commit 4d6f36d0e9
9 changed files with 148 additions and 24 deletions

View File

@ -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

Binary file not shown.

View File

@ -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

View File

@ -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

View File

@ -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 = <

View File

@ -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;

View File

@ -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
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;

Binary file not shown.

View File

@ -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"