From fdabe53df8df3be5f414ad5ebbe1c59580434910 Mon Sep 17 00:00:00 2001 From: roberto Date: Tue, 25 Mar 2008 18:24:30 +0000 Subject: [PATCH] Se habilitan las etiquetas para los articulos de los albaranes de cliente git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@179 f4e31baf-9722-1c47-927c-6f952f962d4b --- .../Informes/InfEtiquetasAlbaranCliente.fr3 | 19 +++ .../Reports/uRptAlbaranesCliente_Server.dfm | 153 +++++------------- .../Reports/uRptAlbaranesCliente_Server.pas | 24 ++- .../Views/uEditorAlbaranesCliente.pas | 14 +- 4 files changed, 83 insertions(+), 127 deletions(-) create mode 100644 Source/Informes/InfEtiquetasAlbaranCliente.fr3 diff --git a/Source/Informes/InfEtiquetasAlbaranCliente.fr3 b/Source/Informes/InfEtiquetasAlbaranCliente.fr3 new file mode 100644 index 00000000..05b11ae4 --- /dev/null +++ b/Source/Informes/InfEtiquetasAlbaranCliente.fr3 @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm index 7fb4ab2f..41c1523b 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm @@ -736,17 +736,17 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Connection = 'IBX' TargetTable = 'ALBARANES_CLIENTE_DETALLES' SQL = - 'SELECT ALBARANES_CLIENTE_DETALLES.ID, ALBARANES_CLIENTE_DETALLES' + - '.ID_ALBARAN,'#10' ALBARANES_CLIENTE_DETALLES.POSICION, ALBARAN' + - 'ES_CLIENTE_DETALLES.TIPO_DETALLE,'#10' F_RTFTOTEXT(ALBARANES_C' + - 'LIENTE_DETALLES.CONCEPTO) as CONCEPTO, ALBARANES_CLIENTE_DETALLE' + - 'S.CANTIDAD,'#10' ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD, AL' + - 'BARANES_CLIENTE_DETALLES.IMPORTE_TOTAL,'#10' ARTICULOS.REFEREN' + - 'CIA, ARTICULOS.FAMILIA, ARTICULOS.REFERENCIA_PROV as REFERENCIA_' + - 'PROVEEDOR'#10#10#10'FROM ALBARANES_CLIENTE_DETALLES'#10'LEFT JOIN ARTICULOS ' + - 'ON (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO = ARTICULOS.ID)'#10'WHERE' + - ' (ID_ALBARAN = :ID_ALBARAN)'#10'AND (ARTICULOS.INVENTARIABLE = 1)'#10'OR' + - 'DER BY POSICION' + 'SELECT ALBARANES_CLIENTE.REFERENCIA, ALBARANES_CLIENTE.FECHA_PRE' + + 'VISTA_ENVIO,'#10' ALBARANES_CLIENTE_DETALLES.ID, ALBARANES_CLI' + + 'ENTE_DETALLES.ID_ALBARAN,'#10' ALBARANES_CLIENTE_DETALLES.POSI' + + 'CION, ALBARANES_CLIENTE_DETALLES.TIPO_DETALLE,'#10' F_RTFTOTEX' + + 'T(ALBARANES_CLIENTE_DETALLES.CONCEPTO) as CONCEPTO, ALBARANES_CL' + + 'IENTE_DETALLES.CANTIDAD,'#10' ALBARANES_CLIENTE_DETALLES.IMPOR' + + 'TE_UNIDAD, ALBARANES_CLIENTE_DETALLES.IMPORTE_TOTAL'#10#10'FROM ALBARA' + + 'NES_CLIENTE_DETALLES'#10'left join ALBARANES_CLIENTE on (ALBARANES_C' + + 'LIENTE.ID = ALBARANES_CLIENTE_DETALLES.ID_ALBARAN)'#10'WHERE (ID_ALB' + + 'ARAN = :ID_ALBARAN)'#10'AND (ALBARANES_CLIENTE_DETALLES.CANTIDAD > 0' + + ')'#10'ORDER BY POSICION'#10#10 StatementType = stSQL ColumnMappings = < item @@ -777,25 +777,32 @@ object RptAlbaranesCliente: TRptAlbaranesCliente DatasetField = 'IMPORTE_TOTAL' TableField = 'IMPORTE_TOTAL' end - item - DatasetField = 'REFERENCIA' - TableField = 'REFERENCIA' - end - item - DatasetField = 'FAMILIA' - TableField = 'FAMILIA' - end - item - DatasetField = 'REFERENCIA_PROVEEDOR' - TableField = 'REFERENCIA_PROVEEDOR' - end item DatasetField = 'ID_ALBARAN' TableField = 'ID_ALBARAN' + end + item + DatasetField = 'REFERENCIA' + TableField = '' + SQLOrigin = 'REFERENCIA' + end + item + DatasetField = 'FECHA_PREVISTA_ENVIO' + TableField = '' + SQLOrigin = 'FECHA_PREVISTA_ENVIO' end> end> Name = 'Informe_Detalles_Etiquetas' Fields = < + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + end + item + Name = 'FECHA_PREVISTA_ENVIO' + DataType = datDateTime + end item Name = 'ID' DataType = datInteger @@ -813,15 +820,10 @@ object RptAlbaranesCliente: TRptAlbaranesCliente DataType = datString Size = 10 end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - end item Name = 'CONCEPTO' DataType = datString - Size = 2000 + Size = 254 end item Name = 'CANTIDAD' @@ -829,21 +831,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente end item Name = 'IMPORTE_UNIDAD' - DataType = datFloat + DataType = datCurrency end item Name = 'IMPORTE_TOTAL' - DataType = datFloat - end - item - Name = 'FAMILIA' - DataType = datString - Size = 255 - end - item - Name = 'REFERENCIA_PROVEEDOR' - DataType = datString - Size = 255 + DataType = datCurrency end> end> JoinDataTables = <> @@ -1052,63 +1044,15 @@ object RptAlbaranesCliente: TRptAlbaranesCliente object frxReport: TfrxReport Version = '4.3' DotMatrixReport = False - EngineOptions.DoublePass = True IniFile = '\Software\Fast Reports' PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick] PreviewOptions.Zoom = 1.000000000000000000 - PrintOptions.Printer = 'Por defecto' + PrintOptions.Printer = 'Default' PrintOptions.PrintOnSheet = 0 - ReportOptions.CreateDate = 39065.872423495400000000 - ReportOptions.LastChange = 39532.539373541660000000 + ReportOptions.CreateDate = 39532.793686689800000000 + ReportOptions.LastChange = 39532.800402905090000000 ScriptLanguage = 'PascalScript' ScriptText.Strings = ( - '' - 'procedure NombreEmpresaOnBeforePrint(Sender: TfrxComponent);' - 'begin' - ' NombreEmpresa.Lines.Clear;' - ' NombreEmpresa.Lines.Add();' - 'end;' - '' - 'procedure TelefonosEmpresaOnBeforePrint(Sender: TfrxComponent);' - 'var' - ' Cadena: String;' - 'begin' - ' TelefonosEmpresa.Lines.Clear;' - '' - ' if ( <> '#39#39') then' - ' Cadena := '#39'tlf: '#39' + ;' - ' if ( <> '#39#39') then' - - ' Cadena := Cadena + '#39' / fax: '#39' + ;' - ' TelefonosEmpresa.Lines.Add(Cadena);' - 'end;' - '' - 'procedure DireccionEmpresaOnBeforePrint(Sender: TfrxComponent);' - 'var' - ' Cadena: String;' - 'begin' - ' DireccionEmpresa.Lines.Clear;' - '' - ' if ( <> '#39#39') then' - - ' DireccionEmpresa.Lines.Add()' + - ';' - '' - ' if ( <> '#39#39') then' - ' Cadena := ;' - ' if ( <> '#39#39') then' - - ' Cadena := Cadena + '#39', '#39' + ;' - ' DireccionEmpresa.Lines.Add(Cadena);' - '' - ' if ( <> '#39#39') then' - - ' DireccionEmpresa.Lines.Add();' - 'end;' - '' '' 'begin' '' @@ -1156,15 +1100,10 @@ object RptAlbaranesCliente: TRptAlbaranesCliente DataType = datString Size = 10 end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - end item Name = 'CONCEPTO' DataType = datString - Size = 2000 + Size = 254 end item Name = 'CANTIDAD' @@ -1172,21 +1111,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente end item Name = 'IMPORTE_UNIDAD' - DataType = datFloat + DataType = datCurrency end item Name = 'IMPORTE_TOTAL' - DataType = datFloat - end - item - Name = 'FAMILIA' - DataType = datString - Size = 255 - end - item - Name = 'REFERENCIA_PROVEEDOR' - DataType = datString - Size = 255 + DataType = datCurrency end> Params = < item @@ -1215,8 +1144,8 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Top = 72 end object frxDBEtiquetas: TfrxDBDataset - UserName = 'frxDBVencimientos' - CloseDataSource = True + UserName = 'frxDBEtiquetas' + CloseDataSource = False DataSource = DADataEtiquetas Left = 448 Top = 16 diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas index 20b710d5..9eab35cc 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas @@ -24,13 +24,13 @@ type frxChartObject1: TfrxChartObject; frxDBCabecera: TfrxDBDataset; frxDBDetalles: TfrxDBDataset; - schReport: TDASchema; - DataDictionary: TDADataDictionary; frxReport: TfrxReport; Bin2DataStreamer: TDABin2DataStreamer; tbl_Etiquetas: TDAMemDataTable; DADataEtiquetas: TDADataSource; frxDBEtiquetas: TfrxDBDataset; + schReport: TDASchema; + DataDictionary: TDADataDictionary; procedure DataModuleCreate(Sender: TObject); private FConnection: IDAConnection; @@ -108,6 +108,26 @@ var dsDetail: IDADataset; AStream: TMemoryStream; begin + Result := Binary.Create; + FConnection.BeginTransaction; + + try + tbl_Etiquetas.ParamByName('ID_ALBARAN').AsInteger := AID; + tbl_Etiquetas.Active := True; + + frxReport.LoadFromFile(DarRutaInformes + rptInfEtiquetas, True); + if withRefCliente then + frxReport.Variables.Variables['withRefCliente'] := 1 + else + frxReport.Variables.Variables['withRefCliente'] := 0; + frxReport.PrepareReport(False); + frxReport.PreviewPages.SaveToStream(Result); + + finally + AStream.Free; + FConnection.RollbackTransaction; + end; + { AStream := TMemoryStream.Create; Result := Binary.Create; diff --git a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas index 0ce9cd5f..00c52161 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas +++ b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas @@ -159,20 +159,8 @@ end; procedure TfEditorAlbaranesCliente.actGenerarEtiquetasExecute(Sender: TObject); begin -AppFactuGES.ShowCapado; -{ inherited; - //Miramos si viene de un pedido previo, si no es asi le preguntamos si desea imprimir la referencia del cliente - if (FAlbaranes.ID_PEDIDO > 0) then - FController.EtiquetasPreview(FAlbaranes, True) - else - begin - if (Application.MessageBox('¿El albarán seleccionado no está asociado a un pedido por internet, ¿desea imprimir la referencia del cliente para las etiquetas de este albarán?', 'Atención', MB_YESNO) = IDYES) then - FController.EtiquetasPreview(FAlbaranes, True) - else - FController.EtiquetasPreview(FAlbaranes, False); - end; -} + FController.EtiquetasPreview(FAlbaranes, True); end; procedure TfEditorAlbaranesCliente.actGenerarEtiquetasUpdate(Sender: TObject);