ALIAS SI_CAIXA
INCLUDE CXA_R01.LST 

VARIAVEL #TEXTO_FONTE
   Private zCmdsDurante,zCrNome,zCrObs,zComplemento
 
   si_caixa->( DbGoto(Z_NUMCXA) )
   ABRA('0NOIDX',r_siga,'cxa_mov', 'cxa_mov')
   xDbCopyTo('mem:_cxa', '_cxa', {||si_numfech=Z_NUMCXA})
   cxa_mov->(DbCloseArea())
   ABRA('0NOIDX','','mem:_cxa',  'cxa_mov', 'mem:_cxa', 'cr_tip_dup+fobs+str(fCartao,3)')
   ABRA('0NOIDX',r_siga,'sccrcli',  'sccrcli')
   ABRA('0NOIDX',r_siga,'sccpfor',  'sccpfor')
   ABRA('0NOIDX',r_siga,'cp_divis', 'cp_divis')
   
   oLst:EvalLineBlocks('DETALHE', '_ENDPAGE_')
   oLst:ResetCols()
   oLst:ZeraSomaCols(.t. /*Zerar totalizadores globais*/) 

   oLst:AddCab( {"AplicaFormatacaoDefaultNoCabecalho"=>"nao", "style"=>"font:Helvetica-Bold#size:14", "COLS"=>"0,C"}, zTitulo)
   oLst:AddCab( {"style"=>"font:Helvetica-Bold#size:12", "COLS"=>"0,C"}, "Retiradas, Sangrias ou Pagamentos Avulsos")
   oLst:AddCab( '_LINHA_GROSSA_' )
   oLst:AddCab( '_CABCOLS_' )
   oLst:AddCab( '_LINHA_FINA_' )

   oLst:AddCol('Dt Emis;fDataEmi;D;99.99.9999;10;;')
   oLst:AddCol('Hora;fHora;C;99:99;5;;')
   oLst:AddCol('Oper;fobs;P;@s12;12;;;;naoSome;')
   oLst:AddCol('Valor;if(left(fobs,8)="SANGRIA ",0-cr_valor,cr_valor);P;@e 999999.99;9;;;Direita;Some;')
   oLst:AddCol('fp;cr_tip_dup;C;XX;2;;')

   oLst:AddCol('Cod;fCli;N;999999;6;;;Direita;naoSome;')
   oLst:AddCol('Nome;zCrNome;P;@S25;25;;;;naoSome;')
   oLst:AddCol('Complemento;zComplemento;P;@S35;35;;;;NaoSome;')
   oLst:AddCol('Dv;cp_divisao;N;999;3;;;Direita;naoSome;')
   oLst:AddCol('Crt;fCartao;N;999;3;;;Direita;naoSome;')
   oLst:AddCol('Bco;fBanco;N;999;3;;;Direita;naoSome;')

   oLst:SetFormatSomaCol(3, {||"*SUBTOTAL"}, .f. /*Alterar Descricao do Totalizador Parcial*/)
   oLst:AddGroup( { "KEY"=>{||cr_tip_dup} } )
   oLst:AddGroup( { "HEADER"=>{ {"style"=>"font:Helvetica-BoldOblique"}, {|| "TRANSACOES EM "+SxNomeFormaPag(cr_tip_dup)} } })
   oLst:AddGroup( { "FOOTER"=>{ {"style"=>"font:Courier-BoldOblique"}, '_SOMACOLS_' } } )
   oLst:AddGroup( { "FOOTER"=>{ {||oLst:ZeraSomaCols(),'_LINHA_FINA_'} } } )

   BLOCO_TXT zCmdsDurante
      if '/'+AllTrim(fobs)+'/'='/RETIRADA/'
         zCrNome := sccpfor->( DbGoto(cxa_mov->fCli), if(empty(cp_fantasi),cp_nome,cp_fantasi) )
         zComplemento := Left(cp_divis->(DbGoto(cxa_mov->cp_divisao),Left(Desc,1)+SUBSTR(Lower(Desc),2) ),15) 
         zComplemento := if(empty(zComplemento),"",zComplemento+" ") + cr_obs
      else 
         zCrNome := sccrcli->( DbGoto(cxa_mov->fCli),if(empty(cr_fantasi),cr_nome,cr_fantasi) )
         zComplemento := "Controle: "+cr_num_ped + " Venc:"+Dtoc(fBomPara) + if("/"+AllTrim(fobs)+"/"="/VENDA/",""," Lqd:"+Dtoc(cr_dt_lqd))
      endif
   FIM_BLOCO_TXT

   cxa_mov->(DbGoTop(), oLst:DbEval(zCmdsDurante, {|| si_numfech=Z_NUMCXA }) )

   oLst:lFecharGruposAbertos := .t.
   oLst:EvalLineBlocks('DETALHE', '_LINHA_GROSSA_')
   // oLst:EvalLineBlocks('DETALHE', {"style"=>"font:Courier-BoldOblique"}, '_SOMACOLS_GLOBAL_' )

   DbCloseAll()
   DbDrop('mem:_cxa')

#FIM_TEXTO_FONTE
