case dado == [TNOME]
tnome = maiusculo(tnome) && fun‡Æo para Tirar Acentua‡Æo
@ l,c say tnome
xlen = len(alltrim(var))
select gmprod
set order to 4
seek pempresa+pfilial+var
if !found()
xdelimitador = [ ] && ; = e : = ou
xfilt1 := space(10)
xfilt2 := space(10)
xfilt3 := space(10)
tem_valor_para_pesquiza = .f.
npos := at("//",tnome)
tnomev = 0.00
if npos > 0
tnomev = alltrim(substr(tnome,npos+2,40))
tnome = substr(tnome,1,npos-1)+space(40)
nposv := at(".",tnomev)
if nposv > 0
tnomevi = val(substr(tnomev,1,nposv-1))
tnomevd = alltrim(substr(tnomev,nposv+1,2))
if len(tnomevd) = 1
tnomev = tnomevi+(val(tnomevd) / 10)
else
tnomev = tnomevi+(val(tnomevd) / 100)
endif
else
nposv := at(",",tnomev)
if nposv > 0
tnomevi = val(substr(tnomev,1,nposv-1))
tnomevd = alltrim(substr(tnomev,nposv+1,2))
if len(tnomevd) = 1
tnomev = tnomevi+(val(tnomevd) / 10)
else
tnomev = tnomevi+(val(tnomevd) / 100)
endif
else
tnomev = val(tnomev)
endif
endif
endif
tnomev = round(tnomev,2)
if tnomev <> 0.00
tem_valor_para_pesquiza = .t.
endif
npos := at(";",tnome)
if npos > 0
xdelimitador = [;]
xnome := alltrim(substr(tnome,1,npos-1))
xresto := alltrim(substr(tnome,npos+1,40))
npos := at(";",xresto)
if npos > 0
xfilt1 := alltrim(substr(xresto,1,npos-1))
xresto2 := alltrim(substr(xresto,npos+1,40))
npos := at(";",xresto2)
if npos > 0
xfilt2 := alltrim(substr(xresto2,1,npos-1))
xfilt3 := alltrim(substr(xresto2,npos+1,40))
else
xfilt2 := alltrim(substr(xresto2,npos+1,40))
endif
else
xfilt1 := alltrim(xresto)
endif
else
npos := at(":",tnome)
if npos > 0
xdelimitador = [:]
xnome := alltrim(substr(tnome,1,npos-1))
xresto := alltrim(substr(tnome,npos+1,40))
npos := at(":",xresto)
if npos > 0
xfilt1 := alltrim(substr(xresto,1,npos-1))
xresto2 := alltrim(substr(xresto,npos+1,40))
npos := at(":",xresto2)
if npos > 0
xfilt2 := alltrim(substr(xresto2,1,npos-1))
xfilt3 := alltrim(substr(xresto2,npos+1,40))
else
xfilt2 := alltrim(substr(xresto2,npos+1,40))
endif
else
xfilt1 := alltrim(xresto)
endif
else
xnome := alltrim(var)
endif
endif
select gmprod
set order to 4
if !empty(xnome)
set softseek on
seek pempresa+pfilial+xnome
set softseek off
else
go top
endif
select xgmprod
zap
select gmprod
do while .t.
if !empty(xnome)
if substr(gmprod->nome,1,len(xnome)) <> xnome .or. ;
eof()
exit
endif
else
if eof()
exit
endif
endif
* Ignora estoque zerado
if crloja->wcrpedf = [S] && filtra Produtos Zerados
if gmprod->qt_estoque = 0
*msginfo("filta zerado skip "+gmprod->nome)
skip
loop
endif
endif
if gmgrup->tp = [N] && NAo aparecer na Venda
skip
loop
endif
if gmprod->negativo = [S]
skip
loop
endif
if tprt2_29 = [S] && Bloq Prod Autom S/N: Bloqueia Vender/Preco de Produto Automatico"
if gmprod->grupo = pgrupo_automatico
skip
loop
endif
endif
if tem_valor_para_pesquiza = .t.
if tnomev <> round(gmprod->pr_venda,2)
skip
loop
endif
endif
xgrava = .t.
gmprod__nome = gmprod->nome
do case
case temai_03 = [S] && pag 23 Concatena Descricao Na Pesquiza do Produto PAg 23
do case
case tprt2_24 = [2] && pag 18 Usa Aplicacao no gmprod
gmprod__nome = gmprod__nome + gmprod->descricao + gmprod->aplicacao
case tprt2_24 = [S] && pag 18 Usa Aplicacao no gmprod
gmprod__nome = gmprod__nome + gmprod->descricao
case tprt2_24 = [A] && pag 18 Usa Aplicacao no gmprod
gmprod__nome = gmprod__nome + gmprod->aplicacao
endcase
case pcgc = [aaaaaaaaaaaaaaaaaa] .or. ;
pcgc = [bbbbbbbbbbbbbbbbbb]
gmprod__nome = gmprod__nome + gmprod->aplicacao
endcase
if xdelimitador = [;] && AND
if at(xfilt1,gmprod__nome) = 0
xgrava = .f.
else
if !empty(xfilt2)
if at(xfilt2,gmprod__nome) = 0
xgrava = .f.
else
if !empty(xfilt3)
if at(xfilt3,gmprod__nome) = 0
xgrava = .f.
endif
endif
endif
endif
endif
else
if xdelimitador = [:] && OR
*msgstop("antes "+gmprod__nome+[*]+xfilt1+[*]+xfilt2+[*]+xfilt3)
xgrava = .f.
if at(xfilt1,gmprod__nome) > 0
xgrava = .t.
else
if !empty(xfilt2)
if at(xfilt2,gmprod__nome) > 0
xgrava = .t.
else
if !empty(xfilt3)
if at(xfilt3,gmprod__nome) > 0
xgrava = .t.
endif
endif
endif
endif
endif
else
xgrava = .t.
endif
endif
if pcgc = [111111111111111170]
if gmprod->grupo = [048]
if pnivel < [2]
xgrava = .F.
endif
endif
endif
if xgrava = .t.
if pdeposito = [S]
tdeposito = gmprod->deposito
if tdeposito $[123]
tbalcao = [N]
else
tbalcao = [S]
tdeposito = [ ]
endif
endif
xyz_pr_venda = gmprod->pr_venda
xyz_pr_vendax = gmprod->pr_venda
xyz_pr_ataca = gmprod->pr_ataca
select xgmprod
do proappend
replace xgmprod->empresa with gmprod->empresa ,;
xgmprod->filial with gmprod->filial ,;
xgmprod->item with gmprod->item ,;
xgmprod->grupo with gmprod->grupo ,;
xgmprod->nome with gmprod->nome ,;
xgmprod->unidade with gmprod->unidade ,;
xgmprod->fornec with gmprod->fornec ,;
xgmprod->est_minimo with gmprod->est_minimo ,;
xgmprod->qt_estoque with gmprod->qt_estoque ,;
xgmprod->estoque_n with gmprod->estoque_n ,;
xgmprod->estoque_c with gmprod->estoque_c ,;
xgmprod->estoquedel with gmprod->estoquedel ,;
xgmprod->pr_custoo with gmprod->pr_custoo ,;
xgmprod->pr_custo with gmprod->pr_custo ,;
xgmprod->cfop with gmprod->cfop ,;
xgmprod->cst with gmprod->cst ,;
xgmprod->perc_icms with gmprod->perc_icms ,;
xgmprod->descnf with gmprod->descnf ,;
xgmprod->cst_ipi with gmprod->cst_ipi ,;
xgmprod->pr_mediac with gmprod->pr_mediac ,;
xgmprod->pr_venda with xyz_pr_venda ,;
xgmprod->pr_vendax with xyz_pr_vendax ,;
xgmprod->pr_ataca with xyz_pr_ataca ,;
xgmprod->pr_promo with gmprod->pr_promo ,;
xgmprod->percomi with gmprod->percomi ,;
xgmprod->med01 with gmprod->med01 ,;
xgmprod->med02 with gmprod->med02 ,;
xgmprod->balcao with tbalcao ,;
xgmprod->local with gmprod->local ,;
xgmprod->deposito with tdeposito
do case
case temai_03 = [S] && pag 23 Concatena Descricao Na Pesquiza do Produto PAg 23
do case
case tprt2_24 = [2] && pag 18 Usa Aplicacao no gmprod
replace xgmprod->descricao with gmprod->descricao
replace xgmprod->aplicacao with gmprod->aplicacao
case tprt2_24 = [S] && pag 18 Usa Aplicacao no gmprod
replace xgmprod->descricao with gmprod->descricao
case tprt2_24 = [A] && pag 18 Usa Aplicacao no gmprod
replace xgmprod->aplicacao with gmprod->aplicacao
endcase
case pcgc = [asasssaaaaaaaaaaaa]
replace xgmprod->aplicacao with gmprod->aplicacao
endcase
if tinte_19 = [S] .or. ; && Usa tabela colecao nos produtos
tinte_19 = [M] && Usa tabela colecao nos produtos
replace xgmprod->colecao with gmprod->colecao
endif
endif
select gmprod
skip
enddo
select xgmprod
go top
ncod = space(04)
xregq = reccount()+7
if xregq > 24
if Wvw_GetScreenWidth() > 800
xregq = 30
else
xregq = 24
endif
endif
if tinte_19 = [S] .or. ; && Usa tabela colecao nos produtos PAg 21
tinte_19 = [M] && Usa tabela colecao nos produtos
set relation to xgmprod->empresa + xgmprod->filial +;
xgmprod->grupo into gmgrup ,;
to xgmprod->empresa + xgmprod->filial +;
xgmprod->colecao into gmcole
else
set relation to xgmprod->empresa + xgmprod->filial +;
xgmprod->grupo into gmgrup
endif
dbselec(01,01,xregq,79,[Itens],[XGMPRODGN],@ncod)