Instruccion de Johnny: todos los directorios de fuentes de inventario deben migrarse de la carpeta temporal PROYECTOS a la carpeta real PROYECTO, ya que PROYECTOS sera eliminada. Se elimino tambien un archivo suelto sin relacion llamado "ipdir" que existia en PROYECTO (del commit inicial) y bloqueaba el nombre de la carpeta. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
468 lines
19 KiB
Plaintext
468 lines
19 KiB
Plaintext
{
|
|
-------------------------------------------------------------------------------
|
|
PROGRAMA : ipprrp058(Mensual)
|
|
OBJETIVO : PROCESO PARA LLENAR TABLA Y POSTERIORMENTE HACER PIVOT TABLE,
|
|
ESTE PROCESO SE EJECUTARA AUTOMATICAMENTE DE ACUERDO AL SCHEDULE QUE SE ESPECIFIQUE
|
|
|
|
PROGRAMADOR : Ing. Juan Francisco Soto
|
|
FECHA REALIZACION : Julio 4, 2005
|
|
MODIFICACDO POR : Ing. Juan Francisco Soto
|
|
FECHA : Julio 18, 2005
|
|
-------------------------------------------------------------------------------
|
|
}
|
|
|
|
GLOBALS "ipprgb000.4gl"
|
|
|
|
DEFINE pcosto_tp,pprima,ptasa_tp,precio,tasa_tp DECIMAL(8,4),
|
|
pidentifica,pnum_oc,tipo_valor,pmes,mesant INTEGER,
|
|
archivo,filename,sysos CHAR(120),
|
|
cels CHAR(20),
|
|
cnt,n,pano,dep_ant,n_row,ppresenta integer,
|
|
fecha_tp,fecha_lq1,fecha1,fecha2 DATE,
|
|
desc_pagos,tasa DEC(12,4),
|
|
pparametro,tipo_rp1 CHAR(1),
|
|
total_tp DEC(12,2),
|
|
ano_ant CHAR(1)
|
|
MAIN
|
|
DEFER INTERRUPT
|
|
#CALL pantalla()
|
|
CALL ipprrp058()
|
|
END MAIN
|
|
|
|
FUNCTION ipprrp058()
|
|
DEFINE producto RECORD LIKE analisis.*
|
|
{
|
|
factura INTEGER,
|
|
orden INTEGER,
|
|
fecha DATE,
|
|
sec_vend CHAR(40),
|
|
tipo_cliente SMALLINT,
|
|
sec_cliente INTEGER,
|
|
nombre CHAR(60),
|
|
cod_n LIKE iptb00002.cod_n,
|
|
cod_grupo LIKE iptb00002.cod_grupo,
|
|
cod_tipo LIKE iptb00002.cod_tipo,
|
|
cod_sec LIKE iptb00002.cod_sec,
|
|
codigo CHAR(25),
|
|
descrip_t LIKE iptb00021.descripcion,
|
|
grupo_local CHAR(30),
|
|
ptipo LIKE iptb00021.descripcion,
|
|
descrip_esp CHAR(60),
|
|
unidad_med LIKE intb00001.unidad_med,
|
|
ventas CHAR(1),
|
|
Zona_geografica CHAR(30),
|
|
pais CHAR(30),
|
|
tipo_negocio SMALLINT,
|
|
descripcion LIKE cctb00013.descripcion,
|
|
unidad_b INTEGER,
|
|
valor_b DEC(12,2),
|
|
cantidad_dev INTEGER,
|
|
precio_dev DEC(12,2),
|
|
unidad_boni INTEGER,
|
|
valor_boni DEC(12,2),
|
|
costo_real DEC(12,4),
|
|
costo_unid_b DEC(12,4),
|
|
costo_unid_n DEC(12,4),
|
|
costo_unid_n_us DEC(12,4),
|
|
costo_std DEC(12,4),
|
|
costo_std_b DEC(12,4),
|
|
costo_std_n DEC(12,4),
|
|
costo_tp DEC(12,4),
|
|
descuento DEC(12,2),
|
|
costo_tp1 DEC(12,4),
|
|
costo_tp2 DEC(12,4),
|
|
unidad_pres LIKE iptb00010.conversion,
|
|
unidad_n INTEGER,
|
|
ano SMALLINT,
|
|
mes SMALLINT,
|
|
tasa_tp DEC(10,3),
|
|
ventas_netas DEC(12,2),
|
|
valor_rd DEC(12,2),
|
|
valor_us DEC(12,2),
|
|
gastos_m_ind DEC(12,2),
|
|
gastos_d DEC(12,2),
|
|
gastos_directos DEC(12,2),
|
|
margen_b_rd DEC(12,2),
|
|
margen_b_US DEC(12,2),
|
|
margen_stp_rd DEC(12,2),
|
|
margen_stp_US DEC(12,2),
|
|
identifica INTEGER,
|
|
tipo_producto LIKE iptb00028.descripcion,
|
|
cantidad_boni INTEGER,
|
|
costo_boni DEC(12,2),
|
|
costo_s_tp DEC(12,4),
|
|
valor_tp DEC(12,2),
|
|
pcosto DEC(12,4),
|
|
descuento_p DEC(12,3),
|
|
kano SMALLINT,
|
|
kmes SMALLINT,
|
|
ptasa DEC(8,3),
|
|
costo DEC(12,4)
|
|
|
|
END RECORD},
|
|
codigo CHAR(10),
|
|
codigo_n integer,
|
|
nombre CHAR(50),
|
|
seleccion CHAR(200)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# WHENEVER ERROR CONTINUE
|
|
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 23,
|
|
COMMENT LINE 21
|
|
|
|
CLEAR SCREEN
|
|
{
|
|
OPEN FORM ipfmrp057 FROM "ipfmrp057"
|
|
DISPLAY FORM ipfmrp057
|
|
CALL pantalla()
|
|
DISPLAY "ipprrp057" AT 4,3
|
|
DISPLAY "DETERMINAR TP PRODUCTOS" AT 6,20
|
|
|
|
|
|
|
|
|
|
SELECT MAX(a.ano) INTO pano
|
|
FROM prdtable a
|
|
|
|
|
|
SELECT MAX(a.mes) INTO pmes FROM prdtable a
|
|
WHERE a.ano = pano AND
|
|
a.fecha_inicio <= TODAY
|
|
}
|
|
LET pano = 2007
|
|
DISPLAY "Actualizando campos en NULL... Espere Por Favor" AT 19,14
|
|
ATTRIBUTE (REVERSE,BOLD)
|
|
|
|
DISPLAY "Borrando data de ANALISIS ... Espere Por Favor" AT 19,14
|
|
DELETE FROM analisis WHERE fecha = today
|
|
DISPLAY "Insertando Ventas Locales... Espere Por Favor" AT 19,14
|
|
|
|
INSERT INTO analisis
|
|
SELECT b.cod_cia,' ', d.factura,d.orden,d.fecha_factura,m.nom1_emp,d.tipo_cliente,d.sec_cliente,j.nombre,b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec,
|
|
B.nomenclatura,x1.producto,' ',' ',
|
|
b.descrip_esp,b.unidad_med, x3.descripcion,
|
|
x.descrip,y.nombre_provincia,'1','TIPO NEGOCIO',
|
|
f.cantidad,f.cantidad*f.precio,'0','0','0',
|
|
' ',
|
|
'0','0','0','0','0','0','0','0',(f.precio*f.cantidad_2)*(cantidad_2/100),'0','0','0','0',
|
|
p.ano,p.mes,'0','0','0','0','0','0','0','0','0','0','0'
|
|
FROM iptb00002 b,vetb00002 d,vetb00003 f,
|
|
vetb00004 j,prdtable p,adtb00003 m,vetb00008 x,OUTER vetb00020 y,OUTER vetb00009 z,vetb00059 x3,iptb00020 x1
|
|
WHERE
|
|
(b.cod_n = f.cod_n and b.cod_grupo = f.cod_grupo and b.cod_tipo = f.cod_tipo and
|
|
b.cod_sec = f.cod_sec) AND
|
|
p.ano = pano AND# p.mes = pmes AND
|
|
x1.cod_n = b.cod_n AND
|
|
j.cod_zona = x.cod_zona AND
|
|
j.cod_provincia = y.cod_provincia AND
|
|
j.cod_zona = z.cod_zona AND
|
|
j.cod_provincia = z.cod_provincia AND
|
|
d.sec_vend = m.num_emp AND
|
|
d.fecha_factura between p.fecha_inicio AND p.fecha_corte AND d.factura = f.factura AND
|
|
d.tipo_cliente = j.tipo_cliente and
|
|
d.sec_cliente = j.sec_cliente and
|
|
d.ventas = x3.ventas AND
|
|
f.status_t IS NULL AND
|
|
(b.cod_n = f.cod_n and b.cod_grupo = f.cod_grupo and b.cod_tipo = f.cod_tipo and
|
|
b.cod_sec = f.cod_sec) AND
|
|
d.status_t IS NULL
|
|
|
|
{VERSION RAYOVAC
|
|
|
|
SELECT d.factura,d.orden,d.fecha_factura,m.nom1_emp,d.tipo_cliente,d.sec_cliente,j.nombre,b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec,
|
|
x2.nomenclatura,x1.descripcion,x4.descripcion,e.descripcion,
|
|
b.descrip_esp,b.unidad_med, x3.descripcion,
|
|
x.descrip,y.nombre_provincia,c.tipo_negocio,h.descripcion,
|
|
f.cantidad,f.cantidad*f.precio,'0','0',f.bonificacion*i.cantidad,
|
|
f.bonificacion*i.cantidad*f.precio,
|
|
'0','0','0','0','0','0','0','0',(f.cantidad-(i.cantidad*f.bonificacion))*f.precio*f.cantidad_2/100,'0','0','0','0',
|
|
p.ano,p.mes,'0','0','0','0','0','0','0','0','0','0','0'
|
|
FROM iptb00022 a,iptb00021 e,intb00001 b,vetb00002 d,vetb00003 f,
|
|
cctb00012 c,cctb00013 h ,vetb00014 i,vetb00004 j,prdtable p,adtb00003 m,vetb00008 x,vetb00020 y,vetb00009 z,
|
|
iptb00028 x1,iptb00002 x2,vetb00059 x3,cotb00051 x4
|
|
WHERE
|
|
(a.cod_n = f.cod_n and a.cod_grupo = f.cod_grupo and a.cod_tipo = f.cod_tipo and
|
|
a.cod_sec = f.cod_sec) AND
|
|
(a.cod_n = i.cod_n and a.cod_grupo = i.cod_grupo and a.cod_tipo = i.cod_tipo and
|
|
a.cod_sec = i.cod_sec) AND
|
|
(a.cod_n = x2.cod_n and a.cod_grupo = x2.cod_grupo and a.cod_tipo = x2.cod_tipo and
|
|
a.cod_sec = x2.cod_sec) AND
|
|
x2.codigo = x4.codigo AND
|
|
a.cod_tamano = e.cod_tamano AND
|
|
a.pcod_grupo = x1.cod_grupo AND
|
|
p.ano = pano AND d.fecha_factura = TODAY AND
|
|
j.cod_zona = x.cod_zona AND
|
|
j.cod_provincia = y.cod_provincia AND
|
|
j.cod_zona = z.cod_zona AND
|
|
j.cod_provincia = z.cod_provincia AND
|
|
d.sec_vend = m.num_emp AND
|
|
d.fecha_factura between p.fecha_inicio AND p.fecha_corte AND d.factura = f.factura AND
|
|
d.tipo_cliente = c.tipo_cliente and
|
|
d.sec_cliente = c.sec_cliente and
|
|
d.tipo_cliente = j.tipo_cliente and
|
|
d.sec_cliente = j.sec_cliente and
|
|
c.tipo_negocio = h.tipo_negocio and
|
|
d.ventas = x3.ventas AND
|
|
f.status_t IS NULL AND
|
|
h.status_t IS NULL AND
|
|
(b.cod_n = f.cod_n and b.cod_grupo = f.cod_grupo and b.cod_tipo = f.cod_tipo and
|
|
b.cod_sec = f.cod_sec) AND
|
|
d.status_t IS NULL AND d.us_crea = f.us_crea and
|
|
b.status_t is NULL AND f.fech_crea > datetime (2005-09-30 08:00) year to minute
|
|
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
DISPLAY "Insertando Devoluciones ... Espere Por Favor" AT 19,14
|
|
ATTRIBUTE (REVERSE,BOLD)
|
|
|
|
|
|
INSERT INTO analisis
|
|
SELECT k.factura,f.fecha,m.nom1_emp,f.tipo_cliente,f.sec_cliente,j.nombre,b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec,
|
|
x2.nomenclatura,x1.descripcion,x4.descripcion,e.descripcion,
|
|
b.descrip_esp,b.unidad_med, 'DOMINICANA',
|
|
x.descrip,y.nombre_provincia,c.tipo_negocio,h.descripcion, '0','0',
|
|
f.cantidad,f.cantidad*k.precio,'0','0','0','0','0','0','0','0','0','0','0','0','0','0','0',
|
|
n.ano,n.mes,'0','0','0','0','0','0','0','0','0','0','0'
|
|
FROM iptb00022 a,iptb00021 e,intb00001 b,iptb00023 f,
|
|
cctb00012 c,cctb00013 h ,vetb00003 k,vetb00004 j,prdtable n,adtb00003 m,vetb00008 x,vetb00020 y,vetb00009 z,
|
|
iptb00028 x1,iptb00002 x2,cotb00051 x4
|
|
WHERE
|
|
(a.cod_n = f.cod_n and a.cod_grupo = f.cod_grupo and a.cod_tipo = f.cod_tipo and
|
|
a.cod_sec = f.cod_sec) AND
|
|
(a.cod_n = x2.cod_n and a.cod_grupo = x2.cod_grupo and a.cod_tipo = x2.cod_tipo and
|
|
a.cod_sec = x2.cod_sec) AND
|
|
a.cod_tamano = e.cod_tamano AND
|
|
a.pcod_grupo = x1.cod_grupo AND
|
|
x2.codigo = x4.codigo AND
|
|
f.fecha between n.fecha_inicio AND n.fecha_corte AND
|
|
n.ano = pano AND f.fecha = TODAY AND
|
|
f.tipo_cliente = c.tipo_cliente and
|
|
f.sec_cliente = c.sec_cliente and
|
|
f.tipo_cliente = j.tipo_cliente and
|
|
f.sec_cliente = j.sec_cliente and
|
|
c.tipo_negocio = h.tipo_negocio and
|
|
f.sec_vend = m.num_emp AND
|
|
x.cod_zona = j.cod_zona AND
|
|
y.cod_provincia = j.cod_provincia AND
|
|
x.cod_zona = z.cod_zona AND
|
|
y.cod_provincia = z.cod_provincia AND
|
|
f.status_t IS NULL AND
|
|
h.status_t IS NULL AND
|
|
(a.cod_n = k.cod_n and a.cod_grupo = k.cod_grupo and a.cod_tipo = k.cod_tipo and
|
|
a.cod_sec = k.cod_sec) AND
|
|
(f.factura = k.factura) and
|
|
(b.cod_n = f.cod_n and b.cod_grupo = f.cod_grupo and b.cod_tipo = f.cod_tipo and
|
|
b.cod_sec = f.cod_sec) AND
|
|
b.status_t is NULL
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
|
|
|
|
DISPLAY "Insertando Ventas EXTERIOR... Espere Por Favor" AT 19,14
|
|
ATTRIBUTE (REVERSE,BOLD)
|
|
|
|
|
|
|
|
# VENTAS EXTERIOR
|
|
|
|
INSERT INTO analisis
|
|
SELECT k.factura,k.fecha_factura,m.nom1_emp,k.tipo_cliente,k.sec_cliente,j.nombre,'0','0','0','0',
|
|
a.codigo,X1.descripcion,b.descripcion,g.descripcion,a.descripcion,d.unidad_med,'CARIBBEAN',x.descrip,
|
|
y.nombre_provincia,c.tipo_negocio,
|
|
h.descripcion,f.cant_emb,f.cant_emb*f.precio, '0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0',
|
|
n.ano,n.mes,'0','0','0','0','0','0','0','0','0','0','0'
|
|
FROM cotb00052 a,cotb00051 b,cotb00073 d,cotb00056 f,cotb00057 k,
|
|
cctb00012 c,cctb00013 h, iptb00002 p,vetb00004 j,prdtable n,adtb00003 m,vetb00008 x,vetb00020 y,vetb00009 z,
|
|
iptb00022 e, iptb00021 g,IPTB00028 X1
|
|
WHERE
|
|
a.codigo = f.codigo and f.factura = k.factura AND
|
|
a.tipo = b.codigo AND k.num_emp = m.num_emp AND
|
|
k.fecha_factura between n.fecha_inicio AND n.fecha_corte AND
|
|
n.ano = pano AND k.fecha_factura = TODAY AND
|
|
f.codigo = p.nomenclatura AND
|
|
a.codigo = p.nomenclatura AND
|
|
d.codigo = p.nomenclatura AND
|
|
p.cod_n = e.cod_n AND
|
|
p.cod_grupo = e.cod_grupo AND
|
|
p.cod_tipo = e.cod_tipo AND
|
|
p.cod_sec = e.cod_sec AND
|
|
e.cod_tamano = g.cod_tamano AND
|
|
e.pcod_grupo = x1.cod_grupo AND
|
|
x.cod_zona = j.cod_zona AND
|
|
y.cod_provincia = j.cod_provincia AND
|
|
x.cod_zona = z.cod_zona AND x.cod_zona !=100 AND
|
|
y.cod_provincia = z.cod_provincia AND
|
|
k.tipo_cliente = c.tipo_cliente and
|
|
k.sec_cliente = c.sec_cliente and
|
|
k.tipo_cliente = j.tipo_cliente and
|
|
k.sec_cliente = j.sec_cliente and
|
|
c.tipo_negocio = h.tipo_negocio and
|
|
f.status_t IS NULL AND
|
|
h.status_t IS NULL
|
|
|
|
# VENTAS HAITI
|
|
|
|
|
|
INSERT INTO analisis
|
|
SELECT k.factura,k.fecha_factura,m.nom1_emp,k.tipo_cliente,k.sec_cliente,j.nombre,'0','0','0','0',
|
|
a.codigo,X1.descripcion,b.descripcion,g.descripcion,a.descripcion,d.unidad_med,'HAITI',x.descrip,
|
|
y.nombre_provincia,c.tipo_negocio,
|
|
h.descripcion,f.cant_emb,f.cant_emb*f.precio, '0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0',
|
|
n.ano,n.mes,'0','0','0','0','0','0','0','0','0','0','0'
|
|
FROM cotb00052 a,cotb00051 b,cotb00073 d,cotb00056 f,cotb00057 k,
|
|
cctb00012 c,cctb00013 h, iptb00002 p,vetb00004 j,prdtable n,adtb00003 m,vetb00008 x,vetb00020 y,vetb00009 z,
|
|
iptb00022 e, iptb00021 g,IPTB00028 X1
|
|
WHERE
|
|
a.codigo = f.codigo and f.factura = k.factura AND
|
|
a.tipo = b.codigo AND k.num_emp = m.num_emp AND
|
|
k.fecha_factura between n.fecha_inicio AND n.fecha_corte AND
|
|
n.ano = pano AND k.fecha_factura = TODAY AND
|
|
f.codigo = p.nomenclatura AND
|
|
a.codigo = p.nomenclatura AND
|
|
d.codigo = p.nomenclatura AND
|
|
p.cod_n = e.cod_n AND
|
|
p.cod_grupo = e.cod_grupo AND
|
|
p.cod_tipo = e.cod_tipo AND
|
|
p.cod_sec = e.cod_sec AND
|
|
e.cod_tamano = g.cod_tamano AND
|
|
e.pcod_grupo = x1.cod_grupo AND
|
|
x.cod_zona = j.cod_zona AND
|
|
y.cod_provincia = j.cod_provincia AND
|
|
x.cod_zona = z.cod_zona AND x.cod_zona = 100 AND # PARA IDENTIFICAR HAITI
|
|
y.cod_provincia = z.cod_provincia AND
|
|
k.tipo_cliente = c.tipo_cliente and
|
|
k.sec_cliente = c.sec_cliente and
|
|
k.tipo_cliente = j.tipo_cliente and
|
|
k.sec_cliente = j.sec_cliente and
|
|
c.tipo_negocio = h.tipo_negocio and
|
|
f.status_t IS NULL AND
|
|
h.status_t IS NULL
|
|
|
|
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
|
|
}
|
|
# BUSCA EL MONTO DEL TP GLOBAL
|
|
|
|
DISPLAY "Buscando informacion para costo ... Espere Por Favor" AT 19,14
|
|
ATTRIBUTE (REVERSE,BOLD)
|
|
|
|
|
|
LET seleccion =
|
|
"SELECT a.*,a.rowid FROM analisis a WHERE a.ano = ? "
|
|
|
|
PREPARE comando FROM seleccion
|
|
DECLARE accion SCROLL CURSOR FOR comando
|
|
OPEN accion USING pano
|
|
|
|
LET cnt = 9
|
|
LET mesant = 0
|
|
FOREACH accion INTO producto.*,pidentifica
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
LET codigo = producto.cod_n USING "&","-",
|
|
producto.cod_grupo using "&","-",
|
|
producto.cod_tipo using "&&","-",
|
|
producto.cod_sec using "&&&"
|
|
|
|
# BUSCA COSTO REAL
|
|
LET producto.costo_real = 0
|
|
LET fecha_lq1 = NULL
|
|
SELECT MAX(fecha_lq) INTO fecha_lq1
|
|
FROM cttb00013 a,prdtable b
|
|
WHERE a.cod_n = producto.cod_n AND
|
|
a.cod_grupo = producto.cod_grupo AND
|
|
a.cod_tipo = producto.cod_tipo AND
|
|
a.cod_sec = producto.cod_sec AND
|
|
b.ano = pano AND
|
|
b.mes = producto.mes AND
|
|
a.tipo_lq != "T" AND
|
|
a.fecha_lq <= b.fecha_corte
|
|
|
|
|
|
SELECT AVG(a.costo_lq) INTO producto.costo_real
|
|
FROM cttb00013 a
|
|
WHERE a.cod_n = producto.cod_n AND
|
|
a.cod_grupo = producto.cod_grupo AND
|
|
a.cod_tipo = producto.cod_tipo AND
|
|
a.cod_sec = producto.cod_sec AND
|
|
a.tipo_lq != "T" AND
|
|
a.fecha_lq = fecha_lq1
|
|
|
|
|
|
#-------------------------------------------------------------------------------------------
|
|
# COSTO STANDARD
|
|
#-------------------------------------------------------------------------------------------
|
|
LET producto.costo_std = 0
|
|
SELECT AVG(a.material+a.labor+a.gastos) INTO producto.costo_std
|
|
FROM iptb00004 a
|
|
WHERE a.mes_fin = 12 AND
|
|
a.cod_n = producto.cod_n AND
|
|
a.cod_grupo = producto.cod_grupo AND
|
|
a.cod_tipo = producto.cod_tipo AND
|
|
a.cod_sec = producto.cod_sec AND
|
|
a.ano = pano AND a.status_t is null
|
|
|
|
IF producto.costo_std IS NULL THEN
|
|
LET producto.costo_std = 0
|
|
END IF
|
|
|
|
# BUSCA TRANSFER PRICE
|
|
|
|
IF producto.costo_real is null THEN
|
|
LET producto.costo_real = 0
|
|
END IF
|
|
|
|
LET producto.ventas_netas = producto.valor_bruto - producto.valor_devuelto - producto.valor_bonfica - producto.descuento
|
|
|
|
IF producto.cod_cia = 1 THEN
|
|
LET producto.origen_producto = "LOCAL"
|
|
ELSE
|
|
LET producto.origen_producto = "EXPORTACION"
|
|
END IF
|
|
display "COD CIA ",producto.cod_cia," ",producto.origen_producto
|
|
UPDATE analisis set analisis.costo_real = producto.costo_real,
|
|
analisis.origen_producto = producto.origen_producto,
|
|
analisis.costo_unid_b = producto.costo_real*producto.unidades_brutas,
|
|
analisis.costo_real = producto.costo_real,
|
|
analisis.costo_std = producto.costo_std,
|
|
analisis.costo_std_b = producto.costo_std*producto.unidades_brutas,
|
|
analisis.costo_std_n = producto.costo_std*producto.unidades_brutas,
|
|
analisis.ventas_netas = producto.ventas_netas - producto.descuento
|
|
WHERE rowid = pidentifica
|
|
|
|
END FOREACH
|
|
END FUNCTION
|
|
|