Etiquetas nuevas
git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@245 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
This commit is contained in:
parent
a80cf72851
commit
8aaaa03bf0
@ -608,7 +608,8 @@ CREATE TABLE CONTACTOS (
|
||||
PERSONA_CONTACTO VARCHAR(255),
|
||||
AGENTE VARCHAR(255) COLLATE ES_ES,
|
||||
PAIS VARCHAR(255) COLLATE ES_ES,
|
||||
IDIOMA_ISO VARCHAR(2) COLLATE ES_ES
|
||||
IDIOMA_ISO VARCHAR(2) COLLATE ES_ES,
|
||||
ELIMINADO TIPO_BOOLEANO DEFAULT 0 NOT NULL
|
||||
|
||||
);
|
||||
|
||||
@ -5700,6 +5701,32 @@ BEGIN
|
||||
SUSPEND;
|
||||
END^
|
||||
|
||||
|
||||
CREATE PROCEDURE PRO_ETIQUETAS_ALBARAN (
|
||||
aid integer)
|
||||
returns (
|
||||
id integer,
|
||||
id_albaran integer,
|
||||
referencia_albaran varchar(255),
|
||||
fecha_prevista_envio date,
|
||||
referencia_cliente varchar(255),
|
||||
cliente varchar(255),
|
||||
idioma_iso varchar(2),
|
||||
posicion integer,
|
||||
tipo_detalle varchar(25),
|
||||
referencia varchar(255),
|
||||
concepto varchar(2000),
|
||||
cantidad numeric(11,2),
|
||||
importe_unidad numeric(11,2),
|
||||
descuento float,
|
||||
importe_total numeric(11,2),
|
||||
referencia_proveedor varchar(255))
|
||||
as
|
||||
begin
|
||||
SUSPEND;
|
||||
END^
|
||||
|
||||
|
||||
/******************************************************************************/
|
||||
/**** Stored Procedures ****/
|
||||
/******************************************************************************/
|
||||
@ -6142,4 +6169,61 @@ begin
|
||||
suspend;
|
||||
end^
|
||||
|
||||
SET TERM ; ^
|
||||
SET TERM ; ^
|
||||
|
||||
|
||||
ALTER PROCEDURE PRO_ETIQUETAS_ALBARAN (
|
||||
aid integer)
|
||||
returns (
|
||||
id integer,
|
||||
id_albaran integer,
|
||||
referencia_albaran varchar(255),
|
||||
fecha_prevista_envio date,
|
||||
referencia_cliente varchar(255),
|
||||
cliente varchar(255),
|
||||
idioma_iso varchar(2),
|
||||
posicion integer,
|
||||
tipo_detalle varchar(25),
|
||||
referencia varchar(255),
|
||||
concepto varchar(2000),
|
||||
cantidad numeric(11,2),
|
||||
importe_unidad numeric(11,2),
|
||||
descuento float,
|
||||
importe_total numeric(11,2),
|
||||
referencia_proveedor varchar(255))
|
||||
as
|
||||
begin
|
||||
for SELECT DET.ID, DET.CANTIDAD
|
||||
FROM ALBARANES_CLIENTE_DETALLES DET
|
||||
WHERE (DET.CANTIDAD IS NOT NULL)
|
||||
AND DET.ID_ALBARAN = :AID
|
||||
ORDER BY DET.ID_ALBARAN, DET.POSICION
|
||||
into :ID, :CANTIDAD
|
||||
do
|
||||
while (CANTIDAD > 0)
|
||||
do begin
|
||||
|
||||
SELECT DET.ID, DET.ID_ALBARAN, ALBARANES_CLIENTE.REFERENCIA, ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO,
|
||||
ALBARANES_CLIENTE.REFERENCIA_CLIENTE, CON.NOMBRE, CON.IDIOMA_ISO,
|
||||
DET.POSICION, DET.TIPO_DETALLE,
|
||||
ARTICULOS.REFERENCIA, F_RTFTOTEXT(DET.CONCEPTO) as CONCEPTO,
|
||||
DET.IMPORTE_UNIDAD,
|
||||
DET.DESCUENTO,
|
||||
DET.IMPORTE_TOTAL,
|
||||
ARTICULOS.REFERENCIA_PROV as REFERENCIA_PROVEEDOR
|
||||
FROM ALBARANES_CLIENTE_DETALLES DET
|
||||
LEFT OUTER JOIN ALBARANES_CLIENTE ON (DET.ID_ALBARAN = ALBARANES_CLIENTE.ID)
|
||||
LEFT OUTER JOIN CONTACTOS CON ON (ALBARANES_CLIENTE.ID_CLIENTE = CON.ID)
|
||||
LEFT OUTER JOIN ARTICULOS ON (DET.ID_ARTICULO = ARTICULOS.ID)
|
||||
WHERE (DET.CANTIDAD IS NOT NULL)
|
||||
AND DET.ID = :ID
|
||||
ORDER BY DET.ID_ALBARAN, DET.POSICION
|
||||
into :ID, :ID_ALBARAN, :REFERENCIA_ALBARAN, :FECHA_PREVISTA_ENVIO, :REFERENCIA_CLIENTE,
|
||||
:CLIENTE, :IDIOMA_ISO, :POSICION, :TIPO_DETALLE, :REFERENCIA, :CONCEPTO, :IMPORTE_UNIDAD, :DESCUENTO,
|
||||
:IMPORTE_TOTAL, REFERENCIA_PROVEEDOR;
|
||||
suspend;
|
||||
CANTIDAD = CANTIDAD - 1;
|
||||
end
|
||||
end^
|
||||
|
||||
SET TERM ; ^
|
||||
|
||||
BIN
Resources/logotipo-etiquetas-1.jpg
Normal file
BIN
Resources/logotipo-etiquetas-1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 55 KiB |
BIN
Resources/logotipo-etiquetas-2.jpg
Normal file
BIN
Resources/logotipo-etiquetas-2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 27 KiB |
File diff suppressed because one or more lines are too long
@ -2512,12 +2512,16 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
end>
|
||||
end
|
||||
item
|
||||
Params = <>
|
||||
Params = <
|
||||
item
|
||||
Name = 'ID_ALBARAN'
|
||||
Value = ''
|
||||
end>
|
||||
Statements = <
|
||||
item
|
||||
Connection = 'IBX'
|
||||
TargetTable = 'V_ETIQUETAS_ART_ALB'
|
||||
StatementType = stAutoSQL
|
||||
SQL = 'select *'#10'from PRO_ETIQUETAS_ALBARAN(:ID_ALBARAN)'#10
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
DatasetField = 'ID'
|
||||
@ -2574,6 +2578,14 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
item
|
||||
DatasetField = 'REFERENCIA_PROVEEDOR'
|
||||
TableField = 'REFERENCIA_PROVEEDOR'
|
||||
end
|
||||
item
|
||||
DatasetField = 'CLIENTE'
|
||||
TableField = 'CLIENTE'
|
||||
end
|
||||
item
|
||||
DatasetField = 'IDIOMA_ISO'
|
||||
TableField = 'IDIOMA_ISO'
|
||||
end>
|
||||
end>
|
||||
Name = 'Informe_Etiquetas_Articulos_Albaranes'
|
||||
@ -2600,6 +2612,16 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
DataType = datString
|
||||
Size = 255
|
||||
end
|
||||
item
|
||||
Name = 'CLIENTE'
|
||||
DataType = datString
|
||||
Size = 255
|
||||
end
|
||||
item
|
||||
Name = 'IDIOMA_ISO'
|
||||
DataType = datString
|
||||
Size = 2
|
||||
end
|
||||
item
|
||||
Name = 'POSICION'
|
||||
DataType = datInteger
|
||||
@ -2617,7 +2639,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
item
|
||||
Name = 'CONCEPTO'
|
||||
DataType = datString
|
||||
Size = 32765
|
||||
Size = 2000
|
||||
end
|
||||
item
|
||||
Name = 'CANTIDAD'
|
||||
@ -2653,29 +2675,61 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
object frxReport: TfrxReport
|
||||
Version = '4.7.71'
|
||||
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.PrintOnSheet = 0
|
||||
ReportOptions.CreateDate = 37800.807714351900000000
|
||||
ReportOptions.LastChange = 42284.683293877320000000
|
||||
ReportOptions.CreateDate = 38330.712904247700000000
|
||||
ReportOptions.LastChange = 42355.744001898150000000
|
||||
ScriptLanguage = 'PascalScript'
|
||||
ScriptText.Strings = (
|
||||
'procedure mContinuaOnBeforePrint(Sender: TfrxComponent);'
|
||||
'procedure Memo2OnBeforePrint(Sender: TfrxComponent);'
|
||||
'var'
|
||||
' Cadena: String;'
|
||||
'begin'
|
||||
' if Engine.FinalPass then'
|
||||
' begin'
|
||||
' if (<Page#> = <TotalPages#>) then'
|
||||
' begin '
|
||||
' mContinua.Visible := False;'
|
||||
' end '
|
||||
' else'
|
||||
' begin '
|
||||
' mContinua.Visible := True;'
|
||||
' end '
|
||||
' end; '
|
||||
'{ Memo2.Lines.Clear;'
|
||||
''
|
||||
' Cadena :='#39'N'#186' albar'#225'n: '#39'; '
|
||||
' Cadena := Cadena + <frxDBEtiquetas."REFERENCIA_ALBARAN">;'
|
||||
' Memo2.Lines.Add(Cadena);'
|
||||
' '
|
||||
' if (<frxDBEtiquetas."REFERENCIA_CLIENTE"> <> '#39#39') then'
|
||||
' begin '
|
||||
' Cadena := '#39'Ref. cliente: '#39';'
|
||||
' Cadena := Cadena + <frxDBEtiquetas."REFERENCIA_CLIENTE">;'
|
||||
' Memo2.Lines.Add(Cadena); '
|
||||
' end; '
|
||||
''
|
||||
' if (<frxDBEtiquetas."REFERENCIA"> <> '#39#39') then'
|
||||
' begin '
|
||||
' Cadena := '#39'Ref. art'#237'culo: '#39';'
|
||||
' Cadena := Cadena + <frxDBEtiquetas."REFERENCIA">;'
|
||||
' Memo2.Lines.Add(Cadena); '
|
||||
' end;'
|
||||
''
|
||||
' if (<frxDBEtiquetas."CONCEPTO"> <> '#39#39') then'
|
||||
' begin '
|
||||
' Cadena := '#39'Art'#237'culo: '#39';'
|
||||
' Cadena := Cadena + UPPERCASE(<frxDBEtiquetas."CONCEPTO">);'
|
||||
' Memo2.Lines.Add(Cadena); '
|
||||
' end;'
|
||||
'} '
|
||||
'end;'
|
||||
''
|
||||
'procedure Memo9OnBeforePrint(Sender: TfrxComponent);'
|
||||
'begin'
|
||||
' if (<frxDBEtiquetas."FECHA_PREVISTA_ENVIO"> <> 0) then'
|
||||
' begin '
|
||||
' memo3.visible := True; '
|
||||
' memo9.visible := True; '
|
||||
' end'
|
||||
' else '
|
||||
' begin '
|
||||
' memo3.visible := False; '
|
||||
' memo9.visible := False; '
|
||||
' end; '
|
||||
' '
|
||||
'end;'
|
||||
''
|
||||
'begin'
|
||||
@ -2684,7 +2738,6 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
ShowProgress = False
|
||||
StoreInDFM = False
|
||||
OnGetValue = frxReportGetValue
|
||||
OnStartReport = 'frxReportOnStartReport'
|
||||
Left = 145
|
||||
Top = 16
|
||||
end
|
||||
@ -4207,6 +4260,16 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
DataType = datString
|
||||
Size = 255
|
||||
end
|
||||
item
|
||||
Name = 'CLIENTE'
|
||||
DataType = datString
|
||||
Size = 255
|
||||
end
|
||||
item
|
||||
Name = 'IDIOMA_ISO'
|
||||
DataType = datString
|
||||
Size = 2
|
||||
end
|
||||
item
|
||||
Name = 'POSICION'
|
||||
DataType = datInteger
|
||||
@ -4224,7 +4287,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
item
|
||||
Name = 'CONCEPTO'
|
||||
DataType = datString
|
||||
Size = 32765
|
||||
Size = 2000
|
||||
end
|
||||
item
|
||||
Name = 'CANTIDAD'
|
||||
@ -4247,7 +4310,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
|
||||
DataType = datString
|
||||
Size = 255
|
||||
end>
|
||||
Params = <>
|
||||
Params = <
|
||||
item
|
||||
Name = 'ID_ALBARAN'
|
||||
Value = ''
|
||||
end>
|
||||
MasterParamsMappings.Strings = (
|
||||
'ID_ALBARAN=ID')
|
||||
LogChanges = False
|
||||
|
||||
@ -106,6 +106,8 @@ type
|
||||
|
||||
//Genera cada uno de los albaranes a imprimir
|
||||
procedure _GenerarAlbaran(const AID: Integer);
|
||||
//Genera las etiquetas de cada uno de los albaranes a imprimir
|
||||
procedure _GenerarEtiquetasAlbaran(const AID: Integer);
|
||||
|
||||
procedure PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
|
||||
procedure PrepararTablaResumenInformeGrafComp(ATabla: IDADataset);
|
||||
@ -258,48 +260,39 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TRptAlbaranesCliente._GenerarEtiquetasAlbaran(const AID: Integer);
|
||||
var
|
||||
AInforme: Variant;
|
||||
|
||||
begin
|
||||
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
|
||||
try
|
||||
tbl_Etiquetas.Active := False;
|
||||
tbl_Etiquetas.ParamByName('ID_ALBARAN').AsInteger := AID;
|
||||
tbl_Etiquetas.Active := True;
|
||||
|
||||
AInforme := DarRutaFichero(DarRutaInformes, rptInfEtiquetas, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString);
|
||||
if VarIsNull(AInforme) then
|
||||
raise Exception.Create (('Error Servidor: _GenerarEtiquetasAlbaran, no encuentra informe ' + rptInfEtiquetas));
|
||||
|
||||
frxReport.LoadFromFile(AInforme, True);
|
||||
frxReport.PrepareReport(False);
|
||||
finally
|
||||
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
|
||||
end;
|
||||
end;
|
||||
|
||||
function TRptAlbaranesCliente.GenerarEtiquetas(const ListaID: TIntegerArray): Binary;
|
||||
var
|
||||
i: Integer;
|
||||
AInforme: Variant;
|
||||
Condicion: TDAWhereExpression;
|
||||
AArray : Array of TDAWhereExpression;
|
||||
|
||||
begin
|
||||
Result := Binary.Create;
|
||||
|
||||
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
|
||||
try
|
||||
|
||||
with tbl_Etiquetas.DynamicWhere do
|
||||
begin
|
||||
|
||||
//Vamos generando todos y cada uno de los albaranes recibidos
|
||||
SetLength(AArray, ListaID.Count);
|
||||
for i := 0 to ListaID.Count - 1 do
|
||||
AArray[i] := NewConstant(ListaID.Items[i], datInteger);
|
||||
|
||||
// (ID_ALBARANES IN ...)
|
||||
Condicion := NewBinaryExpression(NewField('', fld_AlbaranesCliente_DetallesID_ALBARAN), NewList(AArray), dboIn);
|
||||
if IsEmpty then
|
||||
Expression := Condicion
|
||||
else
|
||||
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
|
||||
end;
|
||||
|
||||
tbl_Etiquetas.Active := False;
|
||||
tbl_Etiquetas.Active := True;
|
||||
|
||||
AInforme := DarRutaFichero(DarRutaInformes, rptInfEtiquetas);
|
||||
if VarIsNull(AInforme) then
|
||||
raise Exception.Create (('Error Servidor: GenerarEtiquetas, no encuentra informe ' + rptInforme));
|
||||
|
||||
frxReport.LoadFromFile(AInforme, True);
|
||||
|
||||
frxReport.PrepareReport(False);
|
||||
_GenerarEtiquetasAlbaran(ListaID.Items[i]);
|
||||
frxReport.PreviewPages.SaveToStream(Result);
|
||||
finally
|
||||
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user