ALIAS HELP

VARIAVEL #TEXTO_FONTE
   Private zaLines:={},zDe:=CtoD('01'+SubStr(Dtoc(Date()),3)),zAte:=Date(),zCpf:=Space(11), zDias, zDtProx, oProgBar, zCmdsDurante
   aAdd( zaLines, {"Data Inicial:", "@zDe", @zDe, "99.99.9999", "", ""})
   aAdd( zaLines, {"Data Final..:", "@zAte", @zAte, "99.99.9999", "", ""})
   aAdd( zaLines, {"CPF Paciente:", "@zCpf", @zCpf, "99999999999", "", ""})
   if .not. QuickDialog("Lst_fPopPosV", "Parametros", zaLines)
      Return
   endif

   dbCloseAll()
   SetAliasAaMm(zAte)

   Abra ('0NOIDX', r_siga, 'vb_fpop', 'vb_fpop')
   // oProgBar:=myProgressBar():Create('Selecionando recompras previstas do periodo...')
   // xDbCopyTo('mem:_fpop', 'fpop', {||oProgBar:Step(), zDtProx:=FDATAEMI+mqatend*APLICACOES/POSOLOGIA, (val(zCpf)=0.or.val(zCpf)=val(CPF)).and.FCONFIRMAD='S'.and.zDtProx>=zDe.AND.zDtProx<=zAte})
   xDbCopyTo('mem:_fpop', 'fpop', {||zDtProx:=FDATAEMI+mqatend*APLICACOES/POSOLOGIA, (val(zCpf)=0.or.val(zCpf)=val(CPF)).and.FCONFIRMAD='S'.and.zDtProx>=zDe.AND.zDtProx<=zAte})
   dbCloseAll()
   // oProgBar:Close()
   Abra ('0NOIDX', r_Siga, wSe_Psim, 'se_psim', wse_psim_p+'dr', 'str(pcod,10)+Dtos(mData)+Paciente')
   Abra ('0NOIDX', r_siga, 'vb_pac',  'vb_pac',  'vb_pac','paciente')
   Abra ('0NOIDX', r_siga, 'se_prod', 'se_prod', 'seip_dc6', 'pdic6')
   
   Use ('mem:_fpop') new exclusive
   Index On PACIENTE+Dtos(FDATAEMI) to ('mem:_fpop')
   DbGoTop()

   oLst:Cab1( "PROJECOES DE RECOMPRA FARMACIA POPULAR")
   oLst:Cab2( "Periodo "+Dtoc(zDe)+" a "+Dtoc(zAte), "Emitida em "+dtoc(date())+" as "+time()+" hs" )
  
   oLst:AddCab( '_LINHA_FINA_' )
   oLst:AddCab( '_DB:line1', '_CABCOLS_' )
   oLst:AddCab( '_DB:line2', '_CABCOLS_' , '_DB:line1')
   oLst:AddCab( '_LINHA_GROSSA_' )

   oLst:cAlias_DataCols := 'line1'
   oLst:AddCol('DtRecomp;zDtProx;D;99.99.9999;10;;')
   oLst:AddCol('Paciente;Paciente;C;@S25;25;;')
   oLst:AddCol('CPF;FormataCnpjCpf(cpf);P;@S14;14;;')
   oLst:AddCol('Rua;vb_pac->(DbSeek(_fpop->Paciente),cr_rua);P;@S30;30;;')
   oLst:AddCol('Bairro;vb_pac->cr_bairro;P;@S20;20;;')
   oLst:AddCol('Cep;vb_pac->cr_cep;P;@S10;10;;')
   oLst:AddCol('Medico;se_psim->medico;P;@S30;30;;')
   oLst:AddCol('Crm;se_psim->crm;P;@S10;10;;')

   oLst:cAlias_DataCols := 'line2'
   oLst:AddCol(' ;(" ");P;@S10;10;;')
   oLst:AddCol('Medicamento;Se_Prod->( DbSeek(_fpop->pDic6), pDesc );P;@S30;30;;')
   oLst:AddCol('Quant;mqatend;N;9999;5;;')
   oLst:AddCol('Aplic;(APLICACOES*mqatend);P;999;3;;')
   oLst:AddCol('Posol;POSOLOGIA;N;999;5;;')
   oLst:AddCol('Dias;zDias;P;999;3;;')
   oLst:AddCol('DtCompr;fDataEmi;D;99.99.9999;10;;')
   oLst:AddCol('DtReceit;se_psim->mDataRecei;P;99.99.9999;10;;')
   oLst:AddCol('Autorizacao;Autoriza;C;@S15;15;;')

   oLst:AddRodape( '_LINHA_FINA_', "", {|| "Pagina "+Str(++pag,4)+" / ####"} )

   Do While .not. Eof()
      zDias := mqatend*APLICACOES/POSOLOGIA
      zDtProx := FDATAEMI+zDias
      Se_Prod->( DbSeek(_fpop->pDic6))
      se_psim->(DbSeek(_fpop->( str(Se_Prod->pcod,10)+Dtos(fDataEmi)+left(Paciente,30) )))
      ( oLst:cAlias_DataCols := 'line1', oLst:EvalCabDetRod() )
      ( oLst:cAlias_DataCols := 'line2', oLst:EvalCabDetRod() )
      DbSkip()
   EndDo

   dbCloseAll()
   DbDrop('mem:_fpop')
   
#FIM_TEXTO_FONTE

   // BLOCO_TXT zCmdsDurante
   //    zDias := mqatend*APLICACOES/POSOLOGIA
   //    zDtProx := FDATAEMI+zDias      
   // FIM_BLOCO_TXT
   // _fpop->( DbGoTop(), oLst:DbEval(zCmdsDurante) )
