Se mete firma en sello de azacan, se modifica la vlidación del presupuesto para que en el caso de no tner nada el campo memoria limpiar de textoRTF
git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@1124 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
parent
a2e3fdd629
commit
88b262cdf6
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -170,7 +170,7 @@ uses
|
||||
uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente,
|
||||
schContactosClient_Intf, uPresupuestosClienteReportController,
|
||||
uSistemaFunc, uEMailUtils, uDialogElegirEMail, Dialogs, uStringsUtils,
|
||||
uIDialogListaPresupuestosEnvioEMail, uModuleController, uPlugins_Intf;
|
||||
uIDialogListaPresupuestosEnvioEMail, uModuleController, uPlugins_Intf, uRTFUtils;
|
||||
|
||||
{ TPresupuestosClienteController }
|
||||
|
||||
@ -501,14 +501,16 @@ begin
|
||||
if (APresupuesto.Detalles.DataTable.RecordCount = 0) then
|
||||
raise Exception.Create('El presupuesto debe tener en su contenido al menos un concepto');
|
||||
|
||||
|
||||
FDetallesController.ValidarDetalles(APresupuesto.Detalles);
|
||||
|
||||
{ Asegurarse de valores en campos "automáticos" tanto
|
||||
en MODIFICACIÓN como en INSERCIÓN. }
|
||||
APresupuesto.Edit;
|
||||
try
|
||||
APresupuesto.USUARIO := AppFactuGES.UsuarioActivo.UserName;
|
||||
if (Length(trim(RtfToText(APresupuesto.MEMORIA.Text))) = 0) then
|
||||
APresupuesto.MEMORIA.Clear;
|
||||
|
||||
APresupuesto.USUARIO := AppFactuGES.UsuarioActivo.UserName;
|
||||
|
||||
if Assigned(APresupuesto.Cliente)
|
||||
and (APresupuesto.ID_CLIENTE <> APresupuesto.Cliente.ID) then
|
||||
|
||||
@ -453,27 +453,28 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
|
||||
'EMPRESA,'#10' V_PRESUPUESTOS_CLIENTE.FECHA_PRESUPUESTO,'#10' V_PRE' +
|
||||
'SUPUESTOS_CLIENTE.REFERENCIA || '#39' '#39' || COALESCE(V_PRESUPUESTOS_C' +
|
||||
'LIENTE.REFERENCIA_AUX, '#39#39') AS REFERENCIA,'#10' V_PRESUPUESTOS_CLI' +
|
||||
'ENTE.PORTADA,'#10' V_PRESUPUESTOS_CLIENTE.MEMORIA, V_PRESUPUESTOS' +
|
||||
'_CLIENTE.OBSERVACIONES,'#10' V_PRESUPUESTOS_CLIENTE.IMPORTE_NETO,' +
|
||||
' V_PRESUPUESTOS_CLIENTE.IMPORTE_PORTE,'#10' V_PRESUPUESTOS_CLIENT' +
|
||||
'E.DESCUENTO, V_PRESUPUESTOS_CLIENTE.IMPORTE_DESCUENTO,'#10' V_PRE' +
|
||||
'SUPUESTOS_CLIENTE.BASE_IMPONIBLE, V_PRESUPUESTOS_CLIENTE.IVA,'#10' ' +
|
||||
' V_PRESUPUESTOS_CLIENTE.ID_CLIENTE,'#10' V_PRESUPUESTOS_CLIENTE.' +
|
||||
'REFERENCIA_CLIENTE,'#10' V_PRESUPUESTOS_CLIENTE.CLIENTE_FINAL,'#10' ' +
|
||||
' CONTACTOS.NIF_CIF, CONTACTOS.NOMBRE,'#10' V_PRESUPUESTOS_CLIENT' +
|
||||
'E.IMPORTE_IVA, V_PRESUPUESTOS_CLIENTE.IMPORTE_TOTAL,'#10' COALESC' +
|
||||
'E(CONTACTOS_DIRECCIONES.CALLE, CONTACTOS.CALLE) AS CALLE,'#10' CO' +
|
||||
'ALESCE(CONTACTOS_DIRECCIONES.POBLACION, CONTACTOS.POBLACION) AS ' +
|
||||
'POBLACION,'#10' COALESCE(CONTACTOS_DIRECCIONES.PROVINCIA, CONTACT' +
|
||||
'OS.PROVINCIA) AS PROVINCIA,'#10' COALESCE(CONTACTOS_DIRECCIONES.C' +
|
||||
'ODIGO_POSTAL, CONTACTOS.CODIGO_POSTAL) AS CODIGO_POSTAL,'#10' V_P' +
|
||||
'RESUPUESTOS_CLIENTE.PERSONA_CONTACTO,'#10' V_PRESUPUESTOS_CLIENTE' +
|
||||
'.DESCRIPCION_BONIFICACION,'#10' V_PRESUPUESTOS_CLIENTE.IMPORTE_BO' +
|
||||
'NIFICACION,'#10' V_PRESUPUESTOS_CLIENTE.CERTIFICADO_ISO'#10'FROM'#10' ' +
|
||||
'V_PRESUPUESTOS_CLIENTE'#10' INNER JOIN CONTACTOS ON (CONTACTOS.ID' +
|
||||
' = V_PRESUPUESTOS_CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN CONTAC' +
|
||||
'TOS_DIRECCIONES ON (CONTACTOS_DIRECCIONES.ID = V_PRESUPUESTOS_CL' +
|
||||
'IENTE.ID_DIRECCION)'#10'WHERE'#10' V_PRESUPUESTOS_CLIENTE.ID = :ID'#10
|
||||
'ENTE.PORTADA,'#10' V_PRESUPUESTOS_CLIENTE.MEMORIA,'#10' V_PRESUPUE' +
|
||||
'STOS_CLIENTE.OBSERVACIONES,'#10' V_PRESUPUESTOS_CLIENTE.IMPORTE_N' +
|
||||
'ETO, V_PRESUPUESTOS_CLIENTE.IMPORTE_PORTE,'#10' V_PRESUPUESTOS_CL' +
|
||||
'IENTE.DESCUENTO, V_PRESUPUESTOS_CLIENTE.IMPORTE_DESCUENTO,'#10' V' +
|
||||
'_PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE, V_PRESUPUESTOS_CLIENTE.IVA' +
|
||||
','#10' V_PRESUPUESTOS_CLIENTE.ID_CLIENTE,'#10' V_PRESUPUESTOS_CLIE' +
|
||||
'NTE.REFERENCIA_CLIENTE,'#10' V_PRESUPUESTOS_CLIENTE.CLIENTE_FINAL' +
|
||||
','#10' CONTACTOS.NIF_CIF, CONTACTOS.NOMBRE,'#10' V_PRESUPUESTOS_CL' +
|
||||
'IENTE.IMPORTE_IVA, V_PRESUPUESTOS_CLIENTE.IMPORTE_TOTAL,'#10' COA' +
|
||||
'LESCE(CONTACTOS_DIRECCIONES.CALLE, CONTACTOS.CALLE) AS CALLE,'#10' ' +
|
||||
' COALESCE(CONTACTOS_DIRECCIONES.POBLACION, CONTACTOS.POBLACION)' +
|
||||
' AS POBLACION,'#10' COALESCE(CONTACTOS_DIRECCIONES.PROVINCIA, CON' +
|
||||
'TACTOS.PROVINCIA) AS PROVINCIA,'#10' COALESCE(CONTACTOS_DIRECCION' +
|
||||
'ES.CODIGO_POSTAL, CONTACTOS.CODIGO_POSTAL) AS CODIGO_POSTAL,'#10' ' +
|
||||
' V_PRESUPUESTOS_CLIENTE.PERSONA_CONTACTO,'#10' V_PRESUPUESTOS_CLI' +
|
||||
'ENTE.DESCRIPCION_BONIFICACION,'#10' V_PRESUPUESTOS_CLIENTE.IMPORT' +
|
||||
'E_BONIFICACION,'#10' V_PRESUPUESTOS_CLIENTE.CERTIFICADO_ISO'#10'FROM'#10 +
|
||||
' V_PRESUPUESTOS_CLIENTE'#10' INNER JOIN CONTACTOS ON (CONTACTO' +
|
||||
'S.ID = V_PRESUPUESTOS_CLIENTE.ID_CLIENTE)'#10' LEFT OUTER JOIN CO' +
|
||||
'NTACTOS_DIRECCIONES ON (CONTACTOS_DIRECCIONES.ID = V_PRESUPUESTO' +
|
||||
'S_CLIENTE.ID_DIRECCION)'#10'WHERE'#10' V_PRESUPUESTOS_CLIENTE.ID = :I' +
|
||||
'D'#10
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
@ -1649,29 +1650,245 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
|
||||
PreviewOptions.Zoom = 1.000000000000000000
|
||||
PrintOptions.Printer = 'Por defecto'
|
||||
PrintOptions.PrintOnSheet = 0
|
||||
ReportOptions.CreateDate = 37800.807714351900000000
|
||||
ReportOptions.LastChange = 40652.573738773150000000
|
||||
ReportOptions.CreateDate = 39065.872423495400000000
|
||||
ReportOptions.LastChange = 42305.717481620370000000
|
||||
ScriptLanguage = 'PascalScript'
|
||||
ScriptText.Strings = (
|
||||
'procedure Chart1OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
'{ '
|
||||
' if (<frxDBInformeListadoFacturasGrafComp."ANO1"> <> 0) then'
|
||||
|
||||
' TLineSeries(Chart1.Series[0]).Title := '#39'Total Facturado '#39' +' +
|
||||
' IntToStr(<frxDBInformeListadoFacturasGrafComp."ANO1">);'
|
||||
''
|
||||
' if (<frxDBInformeListadoFacturasGrafComp."ANO2"> <> 0) then'
|
||||
'procedure DatosEmpresaOnBeforePrint(Sender: TfrxComponent);'
|
||||
'var'
|
||||
' Cadena: String;'
|
||||
'begin'
|
||||
'{ DatosEmpresa.Lines.Clear;'
|
||||
' if (<frxDBCabecera."TELEFONO_1_EMPRESA"> <> '#39#39') then'
|
||||
' Cadena := '#39'TLF: '#39' + <frxDBCabecera."TELEFONO_1_EMPRESA">;'
|
||||
' if (<frxDBCabecera."FAX_EMPRESA"> <> '#39#39') then'
|
||||
|
||||
' TLineSeries(Chart1.Series[1]).Title := '#39'Total Facturado '#39' +' +
|
||||
' IntToStr(<frxDBInformeListadoFacturasGrafComp."ANO2">)'
|
||||
' Cadena := Cadena + '#39' FAX: '#39' + <frxDBCabecera."FAX_EMPRESA' +
|
||||
'">;'
|
||||
' DatosEmpresa.Lines.Add(Cadena);'
|
||||
'}'
|
||||
'end;'
|
||||
''
|
||||
'procedure NombreEmpresaOnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
'{ NombreEmpresa.Lines.Clear;'
|
||||
' NombreEmpresa.Lines.Add(<frxDBCabecera."NOMBRE_EMPRESA">);'
|
||||
'}'
|
||||
'end;'
|
||||
''
|
||||
'procedure DireccionEnvioOnBeforePrint(Sender: TfrxComponent);'
|
||||
'var'
|
||||
' ACadena : String;'
|
||||
'begin'
|
||||
'{ ACadena := '#39#39';'
|
||||
' DireccionEnvio.Lines.Clear;'
|
||||
' if (<frxDBCabecera."REFERENCIA_CLIENTE"> <> '#39#39') then'
|
||||
' ACadena := <frxDBCabecera."REFERENCIA_CLIENTE">;'
|
||||
''
|
||||
' if (<frxDBCabecera."PERSONA_CONTACTO"> <> '#39#39') then'
|
||||
|
||||
' ACadena := ACadena + '#39' '#39' + <frxDBCabecera."PERSONA_CONTACT' +
|
||||
'O">;'
|
||||
''
|
||||
' DireccionEnvio.Lines.Add(ACadena);'
|
||||
' ACadena := '#39#39';'
|
||||
' DireccionEnvio.Lines.Add(<frxDBCabecera."CALLE">);'
|
||||
' if (<frxDBCabecera."CODIGO_POSTAL"> <> '#39#39') then'
|
||||
' ACadena := <frxDBCabecera."CODIGO_POSTAL"> + '#39' '#39';'
|
||||
' if (<frxDBCabecera."POBLACION"> <> '#39#39') then'
|
||||
' ACadena := ACadena + <frxDBCabecera."CODIGO_POSTAL">;'
|
||||
''
|
||||
' if (ACadena <> '#39#39') then'
|
||||
' DireccionEnvio.Lines.Add(ACadena);'
|
||||
''
|
||||
' if (<frxDBCabecera."PROVINCIA"> <> '#39#39') then'
|
||||
' DireccionEnvio.Lines.Add(<frxDBCabecera."PROVINCIA">);'
|
||||
''
|
||||
' if (<frxDBCabecera."TELEFONO"> <> '#39#39') then'
|
||||
' DireccionEnvio.Lines.Add(<frxDBCabecera."TELEFONO">);'
|
||||
'}'
|
||||
'end;'
|
||||
''
|
||||
'procedure PageHeader1OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if not Engine.FinalPass then'
|
||||
' Set('#39'TotalPaginas'#39', (<TotalPaginas> + 1));'
|
||||
''
|
||||
' if Engine.FinalPass then'
|
||||
' Set('#39'Pagina'#39', (<Pagina> + 1)); '
|
||||
'end;'
|
||||
''
|
||||
'procedure frxReportOnStartReport(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' Set('#39'Pagina'#39', 0);'
|
||||
' Set('#39'TotalPaginas'#39', 0);'
|
||||
' Set('#39'Capitulo'#39', '#39'0'#39');'
|
||||
' Set('#39'NumCapitulos'#39', 0);'
|
||||
' Set('#39'TextoNumCapitulo'#39', '#39#39#39' '#39#39#39'); '
|
||||
'end;'
|
||||
''
|
||||
'procedure Rich3OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if Engine.FinalPass then'
|
||||
' begin '
|
||||
' Set('#39'Capitulo'#39', (<Capitulo> + 1));'
|
||||
' if (<NumCapitulos> = 1) then'
|
||||
|
||||
' MasterData1.Visible := False; ' +
|
||||
' '
|
||||
' end'
|
||||
' else'
|
||||
' Chart1.Series[1].Active := False;'
|
||||
'} '
|
||||
' Set('#39'NumCapitulos'#39', (<NumCapitulos> + 1)); '
|
||||
'end;'
|
||||
''
|
||||
'procedure Page2OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (Length(<frxDBCabecera."MEMORIA_TEXTO">) = 0) then'
|
||||
' Page2.Visible := false '
|
||||
' else'
|
||||
' Page2.Visible := true; '
|
||||
' '
|
||||
'end;'
|
||||
''
|
||||
'procedure Memo45OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if Engine.FinalPass then'
|
||||
' begin'
|
||||
|
||||
' if (<frxDBCapitulos."TIPO_DETALLE"> <> '#39'Titulo opcional'#39') t' +
|
||||
'hen '
|
||||
' Set('#39'Capitulo'#39', (<Capitulo> + 1));'
|
||||
''
|
||||
' Set('#39'TextoNumCapitulo'#39', <Capitulo>);'
|
||||
''
|
||||
|
||||
' if ((<NumCapitulos> = 1) and (<frxDBCapitulos."CONCEPTO"> =' +
|
||||
' '#39'General'#39')) then'
|
||||
' MasterData1.Visible := False'
|
||||
' else begin '
|
||||
|
||||
' if (<frxDBCapitulos."TIPO_DETALLE"> = '#39'Titulo opcional'#39') ' +
|
||||
'then'
|
||||
' begin'
|
||||
' Set('#39'TextoNumCapitulo'#39', '#39#39#39'OPCIONAL'#39#39#39');'
|
||||
' end'
|
||||
' end '
|
||||
' end'
|
||||
' else '
|
||||
' Set('#39'NumCapitulos'#39', (<NumCapitulos> + 1));'
|
||||
'end;'
|
||||
''
|
||||
'procedure Memo47OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (Length(<frxDBCabecera."OBSERVACIONES">) = 0) then'
|
||||
' begin'
|
||||
|
||||
' Memo11.Visible := False; ' +
|
||||
' '
|
||||
' Memo47.Visible := False;'
|
||||
' end '
|
||||
'end;'
|
||||
''
|
||||
'procedure Footer2OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if not ((<frxDBCabecera."IMPORTE_BONIFICACION">) > 0) then'
|
||||
' begin'
|
||||
' mBonificacion.Visible := False;'
|
||||
|
||||
' mImporteFinal.Visible := False; ' +
|
||||
' '
|
||||
' end'
|
||||
' else'
|
||||
' begin'
|
||||
' mBonificacion.Visible := True;'
|
||||
|
||||
' mImporteFinal.Visible := True; ' +
|
||||
' '
|
||||
' end;'
|
||||
'end;'
|
||||
''
|
||||
''
|
||||
|
||||
'procedure frxDBDetallesCANTIDADOnBeforePrint(Sender: TfrxCompone' +
|
||||
'nt);'
|
||||
'var '
|
||||
' ACantidad: String; '
|
||||
' AIndice: Integer;'
|
||||
' AText : String; '
|
||||
'begin'
|
||||
' if (<frxDBDetalles."CANTIDAD"> <> 0) then'
|
||||
' begin '
|
||||
' frxDBDetallesCANTIDAD.Memo.Clear; '
|
||||
' ACantidad := FloatToStr(<frxDBDetalles."CANTIDAD">); '
|
||||
' AIndice := Pos('#39','#39', ACantidad);'
|
||||
|
||||
' if AIndice > 0 then ' +
|
||||
' '
|
||||
|
||||
' AText := '#39'[FormatFloat('#39#39'#,##0.00'#39#39',<frxDBDetalles."CANTI' +
|
||||
'DAD">)] [frxDBDetalles."UNIDAD_MEDIDA"]'#39
|
||||
' else '
|
||||
|
||||
' AText := '#39'[FormatFloat('#39#39'#,##0.##'#39#39',<frxDBDetalles."CANTI' +
|
||||
'DAD">)] [frxDBDetalles."UNIDAD_MEDIDA"]'#39'; '
|
||||
' '
|
||||
' frxDBDetallesCANTIDAD.Memo.Add(AText);'
|
||||
' end; '
|
||||
'end;'
|
||||
''
|
||||
'procedure ReportSummary1OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (<VerSello> = 1) then'
|
||||
' begin'
|
||||
' Firma1.Visible := True;'
|
||||
' Firma2.Visible := False; '
|
||||
' end'
|
||||
' else'
|
||||
' begin'
|
||||
' Firma1.Visible := False;'
|
||||
' Firma2.Visible := True; '
|
||||
' end;'
|
||||
'end;'
|
||||
''
|
||||
|
||||
'procedure ReportSummary1OnAfterCalcHeight(Sender: TfrxComponent)' +
|
||||
';'
|
||||
'begin'
|
||||
' ReportSummary1.Height := Engine.FreeSpace - 20;'
|
||||
'end;'
|
||||
''
|
||||
'procedure MasterData4OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (MasterData4.DataSet.RecordCount > 1) then'
|
||||
' begin '
|
||||
|
||||
' Header2.Visible := True; ' +
|
||||
' '
|
||||
' MasterData4.Visible := True;'
|
||||
' Memo38.Visible := True;'
|
||||
' end '
|
||||
' else'
|
||||
' begin'
|
||||
' Header2.Visible := False; '
|
||||
' MasterData4.Visible := False;'
|
||||
' Memo38.Visible := False;'
|
||||
' end;'
|
||||
'end;'
|
||||
''
|
||||
'procedure Picture4OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (<VerISO> = 0) then'
|
||||
' begin '
|
||||
' end '
|
||||
' else'
|
||||
' begin '
|
||||
' end; '
|
||||
'end;'
|
||||
''
|
||||
'begin'
|
||||
'end. ')
|
||||
''
|
||||
'end.')
|
||||
ShowProgress = False
|
||||
StoreInDFM = False
|
||||
OnStartReport = 'frxReportOnStartReport'
|
||||
|
||||
Binary file not shown.
@ -16,7 +16,7 @@ BEGIN
|
||||
VALUE "FileVersion", "2.1.1.0\0"
|
||||
VALUE "ProductName", "FactuGES Servidor\0"
|
||||
VALUE "ProductVersion", "2.1.1.0\0"
|
||||
VALUE "CompileDate", "jueves, 22 de octubre de 2015 11:01\0"
|
||||
VALUE "CompileDate", "jueves, 29 de octubre de 2015 12:49\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user