Add some extra required fields
This commit is contained in:
		
							parent
							
								
									26faf4a2ed
								
							
						
					
					
						commit
						3e131b74b9
					
				| 
						 | 
					@ -8,7 +8,8 @@ ventas as (
 | 
				
			||||||
select division.name as organisation,parent.name as parentorg,ad_orginfo.taxid as ruc,
 | 
					select division.name as organisation,parent.name as parentorg,ad_orginfo.taxid as ruc,
 | 
				
			||||||
ad_client.name as client,documentno,c_invoice.description,dateinvoiced,totallines,grandtotal,
 | 
					ad_client.name as client,documentno,c_invoice.description,dateinvoiced,totallines,grandtotal,
 | 
				
			||||||
qtyinvoiced,priceactual,
 | 
					qtyinvoiced,priceactual,
 | 
				
			||||||
linenetamt,c_invoiceline.taxbaseamt,m_product.value as productcode,m_product.name as productname,iso_code,
 | 
					linenetamt,c_invoiceline.taxbaseamt,m_product.value as productcode,m_product.name as productname,
 | 
				
			||||||
 | 
					c_invoiceline.description as productdesc, iso_code,
 | 
				
			||||||
c_invoiceline.line,c_invoice.c_invoice_id,c_invoiceline.c_invoiceline_id,
 | 
					c_invoiceline.line,c_invoice.c_invoice_id,c_invoiceline.c_invoiceline_id,
 | 
				
			||||||
c_bpartner.name as bpname,c_bpartner.taxid,c_uom.name as uom,c_doctype.name as doctype,
 | 
					c_bpartner.name as bpname,c_bpartner.taxid,c_uom.name as uom,c_doctype.name as doctype,
 | 
				
			||||||
c_paymentterm.name as paymentterm,c_paymentterm.netdays,
 | 
					c_paymentterm.name as paymentterm,c_paymentterm.netdays,
 | 
				
			||||||
| 
						 | 
					@ -17,7 +18,8 @@ c_invoicetax.taxbaseamt as invoicetaxbaseamt,c_invoicetax.taxamt as invoicetaxta
 | 
				
			||||||
taxinvoice.name,
 | 
					taxinvoice.name,
 | 
				
			||||||
c_invoicelinetax.taxbaseamt as linetaxbaseamt,c_invoicelinetax.taxamt as linetaxtaxamt,
 | 
					c_invoicelinetax.taxbaseamt as linetaxbaseamt,c_invoicelinetax.taxamt as linetaxtaxamt,
 | 
				
			||||||
taxline.name,
 | 
					taxline.name,
 | 
				
			||||||
fin_payment_schedule.amount as cuota, fin_payment_schedule.duedate, fin_payment_schedule.fin_payment_schedule_id
 | 
					fin_payment_schedule.amount as cuota, fin_payment_schedule.duedate, fin_payment_schedule.fin_payment_schedule_id,
 | 
				
			||||||
 | 
					concat(c_location.address1,' ',c_location.address2,' ',c_location.city,' ',c_location.postal,' ',c_country.name) as direccioncliente
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from
 | 
					from
 | 
				
			||||||
| 
						 | 
					@ -38,6 +40,9 @@ left join ad_org as division on division.ad_org_id = c_invoice.ad_org_id
 | 
				
			||||||
left join ad_org as parent on parent.ad_org_id = division.ad_legalentity_org_id
 | 
					left join ad_org as parent on parent.ad_org_id = division.ad_legalentity_org_id
 | 
				
			||||||
left join ad_orginfo on ad_orginfo.ad_org_id = parent.ad_org_id
 | 
					left join ad_orginfo on ad_orginfo.ad_org_id = parent.ad_org_id
 | 
				
			||||||
left join fin_payment_schedule on fin_payment_schedule.c_invoice_id = c_invoice.c_invoice_id
 | 
					left join fin_payment_schedule on fin_payment_schedule.c_invoice_id = c_invoice.c_invoice_id
 | 
				
			||||||
 | 
					left join c_bpartner_location on c_bpartner_location.c_bpartner_location_id = c_invoice.c_bpartner_location_id
 | 
				
			||||||
 | 
					left join c_location on c_location.c_location_id = c_bpartner_location.c_location_id
 | 
				
			||||||
 | 
					left join c_country on c_country.c_country_id = c_location.c_country_id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -46,6 +51,7 @@ c_invoice.documentno = 'E001-27' and
 | 
				
			||||||
--c_invoice.documentno = '1000052' and
 | 
					--c_invoice.documentno = '1000052' and
 | 
				
			||||||
c_invoice.issotrx = 'Y' and
 | 
					c_invoice.issotrx = 'Y' and
 | 
				
			||||||
c_invoice.isactive = 'Y' and
 | 
					c_invoice.isactive = 'Y' and
 | 
				
			||||||
 | 
					c_invoice.docstatus = 'CO' and
 | 
				
			||||||
ad_client.name ='BLB'
 | 
					ad_client.name ='BLB'
 | 
				
			||||||
--ad_client.name ='Locate & Grow'
 | 
					--ad_client.name ='Locate & Grow'
 | 
				
			||||||
--ad_client.name ='Uchu Wasi'
 | 
					--ad_client.name ='Uchu Wasi'
 | 
				
			||||||
| 
						 | 
					@ -69,10 +75,25 @@ select
 | 
				
			||||||
				'fecEmision',dateinvoiced::date,
 | 
									'fecEmision',dateinvoiced::date,
 | 
				
			||||||
				'horEmision',dateinvoiced::time,
 | 
									'horEmision',dateinvoiced::time,
 | 
				
			||||||
				'codLocalEmisor','0001',
 | 
									'codLocalEmisor','0001',
 | 
				
			||||||
				'tipDocUsuario','6',
 | 
									'tipDocUsuario',case
 | 
				
			||||||
 | 
										when length(taxid)=11 then '6'
 | 
				
			||||||
 | 
										when length(taxid)=8 then '1'
 | 
				
			||||||
 | 
										else '0' end,
 | 
				
			||||||
				'numDocUsuario',taxid,
 | 
									'numDocUsuario',taxid,
 | 
				
			||||||
				'rznSocialUsuario',bpname,
 | 
									'rznSocialUsuario',bpname,
 | 
				
			||||||
				'tipMoneda',iso_code,
 | 
									'tipMoneda',iso_code,
 | 
				
			||||||
 | 
									'codMotivo',case
 | 
				
			||||||
 | 
										when substring(doctype,1,4)='Nota' then '01'
 | 
				
			||||||
 | 
										else '-' end,
 | 
				
			||||||
 | 
									'desMotivo',case
 | 
				
			||||||
 | 
										when substring(doctype,1,4)='Nota' then 'Anulacion de operacion'
 | 
				
			||||||
 | 
										else '-' end,
 | 
				
			||||||
 | 
									'tipDocAfectado',case
 | 
				
			||||||
 | 
										when substring(doctype,1,4)='Nota' then '01'
 | 
				
			||||||
 | 
										else '-' end,
 | 
				
			||||||
 | 
									'numDocAfectado',case
 | 
				
			||||||
 | 
										when substring(doctype,1,4)='Nota' then description
 | 
				
			||||||
 | 
										else '-' end,
 | 
				
			||||||
				'sumTotTributos',(grandtotal-totallines)::varchar,
 | 
									'sumTotTributos',(grandtotal-totallines)::varchar,
 | 
				
			||||||
				'sumTotValVenta',totallines::varchar,
 | 
									'sumTotValVenta',totallines::varchar,
 | 
				
			||||||
				'sumPrecioVenta',grandtotal::varchar,
 | 
									'sumPrecioVenta',grandtotal::varchar,
 | 
				
			||||||
| 
						 | 
					@ -92,10 +113,15 @@ select
 | 
				
			||||||
				'invoiceid',c_invoice_id,
 | 
									'invoiceid',c_invoice_id,
 | 
				
			||||||
				'codPaisCliente','PE',
 | 
									'codPaisCliente','PE',
 | 
				
			||||||
				'codUbigeoCliente','150140',
 | 
									'codUbigeoCliente','150140',
 | 
				
			||||||
				'desDireccionCliente','AV. ANGAMOS 1111, SURCO, LIMA',
 | 
									'desDireccionCliente',direccioncliente,
 | 
				
			||||||
				'codPaisEntrega','PE',
 | 
									'codPaisEntrega','PE',
 | 
				
			||||||
				'codUbigeoEntrega','150140',
 | 
									'codUbigeoEntrega','150140',
 | 
				
			||||||
				'desDireccionEntrega','AV. ANGAMOS 1111, SURCO, LIMA'
 | 
									'desDireccionEntrega',direccioncliente,
 | 
				
			||||||
 | 
									'ctaBancoNacionDetraccion','11111111111',
 | 
				
			||||||
 | 
									'codBienDetraccion','037',
 | 
				
			||||||
 | 
									'porDetraccion','10.0',
 | 
				
			||||||
 | 
									'mtoDetraccion','0.00',
 | 
				
			||||||
 | 
									'codMedioPago','003'
 | 
				
			||||||
				)
 | 
									)
 | 
				
			||||||
			)->0
 | 
								)->0
 | 
				
			||||||
		)
 | 
							)
 | 
				
			||||||
| 
						 | 
					@ -106,9 +132,9 @@ select
 | 
				
			||||||
				'invoiceline',c_invoiceline_id,
 | 
									'invoiceline',c_invoiceline_id,
 | 
				
			||||||
				'codUnidadMedida','BX',
 | 
									'codUnidadMedida','BX',
 | 
				
			||||||
				'ctdUnidadItem',qtyinvoiced::varchar,
 | 
									'ctdUnidadItem',qtyinvoiced::varchar,
 | 
				
			||||||
				'codProducto',productcode,
 | 
									'codProducto',coalesce(productcode,'-'),
 | 
				
			||||||
				'codProductoSUNAT','50161813',
 | 
									'codProductoSUNAT','50161813',
 | 
				
			||||||
				'desItem',productname,
 | 
									'desItem',coalesce(productname,productdesc,'-'),
 | 
				
			||||||
				'mtoValorUnitario',priceactual::varchar,
 | 
									'mtoValorUnitario',priceactual::varchar,
 | 
				
			||||||
				'sumTotTributosItem',linetaxtaxamt::varchar,
 | 
									'sumTotTributosItem',linetaxtaxamt::varchar,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -135,7 +161,8 @@ select
 | 
				
			||||||
				'codTipTributoOtroItem','OTH',
 | 
									'codTipTributoOtroItem','OTH',
 | 
				
			||||||
				'porTriOtroItem','0.00',
 | 
									'porTriOtroItem','0.00',
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				'codTriIcbper','7152',
 | 
					--				'codTriIcbper','7152',
 | 
				
			||||||
 | 
									'codTriIcbper','-',
 | 
				
			||||||
				'mtoTriIcbperItem','0.00',
 | 
									'mtoTriIcbperItem','0.00',
 | 
				
			||||||
				'ctdBolsasTriIcbperItem','0',
 | 
									'ctdBolsasTriIcbperItem','0',
 | 
				
			||||||
				'nomTributoIcbperItem','ICBPER',
 | 
									'nomTributoIcbperItem','ICBPER',
 | 
				
			||||||
| 
						 | 
					@ -182,6 +209,9 @@ select
 | 
				
			||||||
		'variablesGlobales','[]'::jsonb
 | 
							'variablesGlobales','[]'::jsonb
 | 
				
			||||||
		)
 | 
							)
 | 
				
			||||||
		||
 | 
							||
 | 
				
			||||||
 | 
						case
 | 
				
			||||||
 | 
							when substring(doctype,1,4)='Bole' then jsonb_build_object('datoPagoX','[]'::jsonb)
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
		jsonb_build_object(
 | 
							jsonb_build_object(
 | 
				
			||||||
			'datoPago', jsonb_agg(DISTINCT
 | 
								'datoPago', jsonb_agg(DISTINCT
 | 
				
			||||||
				jsonb_build_object(
 | 
									jsonb_build_object(
 | 
				
			||||||
| 
						 | 
					@ -191,17 +221,22 @@ select
 | 
				
			||||||
					)
 | 
										)
 | 
				
			||||||
				)->0
 | 
									)->0
 | 
				
			||||||
			)
 | 
								)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
		||
 | 
							||
 | 
				
			||||||
 | 
						case
 | 
				
			||||||
 | 
							when substring(doctype,1,4)='Bole' then jsonb_build_object('detallePagoX','[]'::jsonb)
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
		jsonb_build_object(
 | 
							jsonb_build_object(
 | 
				
			||||||
			'detallePago', jsonb_agg(DISTINCT
 | 
								'detallePago', jsonb_agg(DISTINCT
 | 
				
			||||||
				jsonb_build_object(
 | 
									jsonb_build_object(
 | 
				
			||||||
					'cuotaid',fin_payment_schedule_id,
 | 
										'cuotaid',fin_payment_schedule_id,
 | 
				
			||||||
				'mtoCuotaPago',cuota::varchar,
 | 
										'mtoCuotaPago',abs(cuota)::varchar,
 | 
				
			||||||
					'fecCuotaPago',duedate::date,
 | 
										'fecCuotaPago',duedate::date,
 | 
				
			||||||
					'tipMonedaCuotaPago',iso_code
 | 
										'tipMonedaCuotaPago',iso_code
 | 
				
			||||||
					)
 | 
										)
 | 
				
			||||||
				)
 | 
									)
 | 
				
			||||||
			)
 | 
								)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
		||
 | 
							||
 | 
				
			||||||
	jsonb_build_object(
 | 
						jsonb_build_object(
 | 
				
			||||||
		'retencion', jsonb_agg(DISTINCT
 | 
							'retencion', jsonb_agg(DISTINCT
 | 
				
			||||||
| 
						 | 
					@ -212,8 +247,9 @@ select
 | 
				
			||||||
				)
 | 
									)
 | 
				
			||||||
			)->0
 | 
								)->0
 | 
				
			||||||
		)
 | 
							)
 | 
				
			||||||
	)::varchar
 | 
						)::varchar,doctype,ruc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
--*/
 | 
					--*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from ventas;
 | 
					from ventas
 | 
				
			||||||
 | 
					group by doctype,ruc;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue