LOCAL lcFileNamePd

&&STRTOFILE(oJs.cParam,'\ghost_log_pd.txt')

IF oApp.lGhostLocal 
	oApp.sqlexec("update ghost.commander set estado=1,respuesta='Ok' WHERE id="+oJs.cIdCmd)
ELSE
	cCmd = 'json/cmd_procesado.php?id='+oJs.cIdCmd+'&resp=Ok'
	IF oJs.ltest
		MESSAGEBOX(cCmd)
	ENDIF
	oApp.runLink(cCmd)
ENDIF


*!*	TEXT TO oJs.cParam NOSHOW TEXTMERGE
*!*	ID|IDCUSTOMER|DATE|HORA|IDSALESMAN|IDBODEGA|PVP|SUBTOTAL|SUBT0|SUBTX|TAX|TOTAL|IDUSER|TAXPERCENT|FORMAPAGO|C_LNG|C_LAT|NOTA|T_INI|T_FIN|RUC|NAME|COMERCIO|ADDRESS|PHONE|EMAIL|CITY|IDZONA~ID|IDCAB|IDITEM|LINE|PRICE|IVA|PVP|LIVA|QUANTITY|BULTOS|UC|UNIDADES|DESCUNIT|PRECIOBASE{1|0|2016-04-25|10:59:47|16|2|1|11.7500|11.7500|0.0000|0.0000|11.7500|16|12.0|3|-79.2028864|-4.0066428||2016-04-25 10:59:29|2016-04-25 10:59:47|1102885314001|TORRES TSNDAZO EDDY FRANCISCO|E-SISTEMAS|Av. Brasil 2886 y Honduras|0982684021|mreddytorres@gmail.com|LOJA|2~1|1|157|1|0.4896|0|0.0000|0.0000|24.0|1.0|0.0|0.0|0.0000|0.4896_2|1|160|2|0.0|0|0.0000|0.0000|4.0|0.0|0.0|4.0|0.0000|0.4896
*!*	ENDTEXT



&&MESSAGEBOX(oJs.cParam)

IF !oApp.android_reverse_cd(oJs.cParam)
	MESSAGEBOX('Error en definicion de pedido:' +CHR(13)+oJs.cParam)
	IF oJs.ltest
		STRTOFILE(oJs.cParam,'\ghost_log_pd.txt')
	ENDIF
	
	RETURN 
ENDIF

cIdCust = PADL(0,12,'0')

SELECT pda_cur_cab
&&brow
GO top
SCAN all
	cIdUser = oApp.fill_id(pda_cur_cab.iduser,8)
	cRuc = ALLTRIM(pda_cur_cab.ruc)
	cIdCust = oApp.fill_id(pda_cur_cab.idcustomer,12)
	cIdSalesman = oApp.fill_id(pda_cur_cab.idsalesman,8)
	
	cIdBasketPDa = 'NOTEBOOK'+STRTRAN(ALLTRIM(pda_cur_cab.date)+ALLTRIM(TRANSFORM(pda_cur_cab.id))+ALLTRIM(TRANSFORM(pda_cur_cab.idsalesman)),'-','')
	
	pedido()
	
	SELECT pda_cur_cab
ENDSCAN




FUNCTION pedido ()

	IF oApp.sqlexec('SELECT id from basket where pocustomer="'+cIdBasketpda+'"')=0

		cId = oApp.newid('Basket', 14, .t.)
		
		oApp.t_clear()
		oApp.t_set('id', cId, 'C')	
		oApp.t_set('IdCustomer', 	cIdCust)

		oApp.t_set('Date', 			ALLTRIM(pda_cur_cab.date))
		oApp.t_set('Hora', 			ALLTRIM(pda_cur_cab.hora))
		oApp.t_set('IdSalesman', 	cIdSalesman)
		oApp.t_set('CodePrinter', 1, 'N')
		oApp.t_set('PVP', 			ALLTRIM(pda_cur_cab.pvp))
		oApp.t_set('SubTotal', 		ALLTRIM(oApp.fixd(pda_cur_cab.subtotal)))
		oApp.t_set('Subt0', 		ALLTRIM(oApp.fixd(pda_cur_cab.subt0)))
		oApp.t_set('SubtX', 		ALLTRIM(oApp.fixd(pda_cur_cab.subtX)))
		oApp.t_set('Tax', 			ALLTRIM(oApp.fixd(pda_cur_cab.tax)))
		oApp.t_set('Total', 		TRANSFORM(val(oApp.fixd(pda_cur_cab.total)),'9999999999.99'))
		oApp.t_set('IdUser', 		oApp.fill_id(pda_cur_cab.iduser,8))
		oApp.t_set('IdBodega', 		oApp.fill_id(pda_cur_cab.idbodega,8))
		
		oApp.t_set('TaxPercent', 	ALLTRIM(pda_cur_cab.TaxPercent))
		oApp.t_set('FormaPago', 12, 'N')
		oApp.t_set('DateOk', 		ALLTRIM(pda_cur_cab.date))
		oApp.t_set('Moneda', 		1, 'N')
		oApp.t_set('TipoCambio', 	1, 'N')
		oApp.t_set('IdCC', 			'0000000000', 'C')
		oApp.t_set('IdCP', 			'0000000000', 'C')
		
		oApp.t_set('latitud', 		TRANSFORM(pda_cur_cab.c_lat))
		oApp.t_set('longitud', 		TRANSFORM(pda_cur_cab.c_lng))
		
		*** VARIABLES CONTROLADAS

*!*			IF oApp.i_exist('t_ini', 'pda_cur_cab')
*!*				oApp.t_set('t_ini', ALLTRIM(pda_cur_cab.t_ini))
*!*			ENDIF
*!*			
*!*			IF oApp.i_exist('t_fin', 'pda_cur_cab')
*!*				oApp.t_set('t_fin', ALLTRIM(pda_cur_cab.t_fin))
*!*			ENDIF

		oApp.t_set('noteprint', 	allt(TRANSFORM(pda_cur_cab.id))+".- "+SUBSTR(ALLTRIM(pda_cur_cab.nota),1,250), 'C')
		oApp.t_set('pocustomer', 	cIdBasketPDa , 'C')
		oApp.t_set('note', ALLTRIM("Pedido Nro. "+allt(TRANSFORM(pda_cur_cab.id))+" "+TTOC(DATETIME(),3)), 'C')
		oApp.t_insert('Basket')


		SELECT * FROM pda_cur_det WHERE idcab=pda_cur_cab.id INTO CURSOR curDet
		
		SELECT curDet
		GO top
		SCAN all
		
			cIdItem = oApp.fill_id(curDet.iditem,12)
			
			nbultos=val(curDet.bultos)
			nuc=val(curDet.uc)
			nunidades=val(curDet.unidades)
			npreciobase = precioBase()
			
			nDescUnit = VAL(curDet.descunit)/100*VAL(curDet.price)

			oApp.t_clear()
			oApp.t_set('id', cId, 'C')	
			oApp.t_set('IdItem', 	cIdItem)
			oApp.t_set('Line', 		oApp.fill_id(curDet.line,4))
			oApp.t_set('Price', 	ALLTRIM(oApp.fixd(curDet.price)))
			oApp.t_set('descunit', 	nDescUnit,'N')
			oApp.t_set('pdescunit', ALLTRIM(oApp.fixd(curDet.descunit)))
			oApp.t_set('IVA', 		ALLTRIM(oApp.fixd(curDet.iva)))
			oApp.t_set('PVP', 		ALLTRIM(oApp.fixd(curDet.pvp)))
			oApp.t_set('LIVA', 		ALLTRIM(oApp.fixd(curDet.liva)))
			oApp.t_set('Quantity', 	ALLTRIM(oApp.fixd(curDet.quantity)))
			
			oApp.t_set('PrecioBase', transform(npreciobase))
			oApp.t_set('bultos', 	transform(nbultos))
			oApp.t_set('uc', 		transform(nuc))
			oApp.t_set('unidades', 	transform(nunidades))
			
			oApp.t_insert('BasketDet')
			
			SELECT curDet

		ENDSCAN
	ELSE
		MESSAGEBOX(cIdBasketpda+' ya existe..')
	ENDIF

ENDFUNC


FUNCTION precioBase()
	npreciobase = 0
	IF oApp.sqlexec('select unidadescaja,price,priceb,pricec,priced,pricee from item where id='+cIdItem,'curItem')>0
		npreciobase = curItem.price
		nOp = VAL(curDet.pvp)
		IF nOp=2
			npreciobase = curItem.priceb
		ENDIF
		IF nOp=3
			npreciobase = curItem.pricec
		ENDIF
		IF nOp=4
			npreciobase = curItem.priced
		ENDIF
		IF nOp=5
			npreciobase = curItem.pricee
		ENDIF
	ENDIF

	IF nuc<=0
		nbultos=0
		nuc=1
		nunidades=VAL(curDet.quantity)

		nuc = curItem.unidadescaja
		IF nuc<=0
			nUc = 1
		ENDIF
		
		nbultos = FLOOR(nunidades/nuc)
		nunidades = nunidades-nbultos*nuc
		
	ENDIF
			 

	RETURN npreciobase
ENDFUNC


