101 lines
3.4 KiB
ObjectPascal
101 lines
3.4 KiB
ObjectPascal
|
|
unit uViewDocumentosPedidoProveedor;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
|
Dialogs, uViewDocumentos, ActnList,
|
|||
|
|
TB2Item, TBX, TB2Dock, TB2Toolbar, cxControls, cxContainer,
|
|||
|
|
uBizPedidosProveedor, uPedidosProveedorController, ImgList,
|
|||
|
|
PngImageList, ComCtrls, Menus;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
IViewDocumentosPedidoProveedor = interface
|
|||
|
|
['{83AFBD29-750D-4564-ADAE-468BDBE4C424}']
|
|||
|
|
function GetController : IPedidosProveedorController;
|
|||
|
|
procedure SetController (const Value : IPedidosProveedorController);
|
|||
|
|
property Controller : IPedidosProveedorController read GetController write SetController;
|
|||
|
|
|
|||
|
|
function GetPedido: IBizPedidoProveedor;
|
|||
|
|
procedure SetPedido(const Value: IBizPedidoProveedor);
|
|||
|
|
property Pedido: IBizPedidoProveedor read GetPedido write SetPedido;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
TfrViewDocumentosPedidoProveedor = class(TfrViewDocumentos, IViewDocumentosPedidoProveedor)
|
|||
|
|
private
|
|||
|
|
FController : IPedidosProveedorController;
|
|||
|
|
FPedido: IBizPedidoProveedor;
|
|||
|
|
function GetController : IPedidosProveedorController;
|
|||
|
|
procedure SetController (const Value : IPedidosProveedorController);
|
|||
|
|
function GetPedido: IBizPedidoProveedor;
|
|||
|
|
procedure SetPedido(const Value: IBizPedidoProveedor);
|
|||
|
|
|
|||
|
|
protected
|
|||
|
|
procedure Sincronizar; override;
|
|||
|
|
function RecuperarFicheroServidor(const NombreFichero: String; const DirectorioDestino: String): Boolean; override;
|
|||
|
|
|
|||
|
|
public
|
|||
|
|
property Controller : IPedidosProveedorController read GetController write SetController;
|
|||
|
|
property Pedido: IBizPedidoProveedor read GetPedido write SetPedido;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
frViewDocumentosPedidoProveedor: TfrViewDocumentosPedidoProveedor;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
{ TfrViewDocumentosContrato }
|
|||
|
|
|
|||
|
|
function TfrViewDocumentosPedidoProveedor.GetController: IPedidosProveedorController;
|
|||
|
|
begin
|
|||
|
|
Result := FController;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TfrViewDocumentosPedidoProveedor.GetPedido: IBizPedidoProveedor;
|
|||
|
|
begin
|
|||
|
|
Result := FPedido;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function TfrViewDocumentosPedidoProveedor.RecuperarFicheroServidor(const NombreFichero: String; const DirectorioDestino: String): Boolean;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
Result := Controller.GestorDocumentosController.DescargarFichero(Pedido.ID, NombreFichero, DirectorioDestino);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrViewDocumentosPedidoProveedor.SetController(const Value: IPedidosProveedorController);
|
|||
|
|
begin
|
|||
|
|
FController := Value;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrViewDocumentosPedidoProveedor.SetPedido(const Value: IBizPedidoProveedor);
|
|||
|
|
begin
|
|||
|
|
FPedido := Value;
|
|||
|
|
//Inicializamos la lista de documentos local con los ficheros del servidor
|
|||
|
|
if Assigned(FPedido) and Assigned(FController) then
|
|||
|
|
ListaFicheros := Controller.GestorDocumentosController.DarListaDocumentos(Pedido.ID);
|
|||
|
|
|
|||
|
|
RefrescarVisualizador;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrViewDocumentosPedidoProveedor.Sincronizar;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
|
|||
|
|
//De momento el action actSincronizar con el servidor estar<61> oculto y se activa, hay que tener en cuenta lo comentado
|
|||
|
|
{
|
|||
|
|
if Contrato.EsNuevo then
|
|||
|
|
begin
|
|||
|
|
if (ShowConfirmMessage('Se han producido cambios', 'Se han producido cambios y no se puede sincronizar hasta que no se guarden.' + #10#13 +
|
|||
|
|
'<27>Desea guardarlos ahora?') = IDYES) then
|
|||
|
|
actGuardar.Execute
|
|||
|
|
else
|
|||
|
|
ShowInfoMessage('Recuerde guardar los cambios si quiere previsualizar o imprimir.');
|
|||
|
|
end;
|
|||
|
|
}
|
|||
|
|
Controller.GestorDocumentosController.SincronizarDocumentos(Pedido.ID, ListaFicheros, Directorio);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|