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:
roberto 2015-10-29 11:56:45 +00:00
parent a2e3fdd629
commit 88b262cdf6
6 changed files with 270 additions and 50 deletions

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

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

View File

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

View File

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