PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
Selecionar marcados na tela
Versão:
.
Plataforma:
Microsoft
Complemento:
DB:
SQL Server
Complemento:
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário MARQS MARQS em 08/10/2021, 14:31 h
Local: SP  Registro: 08/10/2021  Postagens: 2
Olá, sou novo aqui e estou com uma situação que não consigo resolver.

Eu criei uma função que percorre os itens que foram marcados pelo usuário e retorna quais pedidos foram. (SC9 - Documentos de saída)
Até ai tudo bem, só que, há um parâmetro (MV_PAR04) da MATA460 que me permite já trazer marcados os pedidos que podem ser faturados e quando o usuário utiliza ele, os pedidos mostram como marcados no browse, mas não recebem marca no bd. Então não consigo selecionar eles.
Alguém pode me ajudar como posso contornar isso?

Não posso utilizar o PE M460MARK, pois eu quero verificar os pedidos antes de faturar, a minha função só quero pegar os selecionados e realizar outro procedimento.

Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário MARQS MARQS em 14/10/2021, 12:05 h
Local: SP  Registro: 08/10/2021  Postagens: 2
Eu estou tentando da seguinte forma já que não encontrei nada que me retornasse direto os marcados. Estou refazendo todos os filtros que o Protheus faz

//pegando os filtros que foram aplicados ate chegar na tela atual
Local aFiltro   := Eval(bFiltraBrw,1)
Local cQrySC9   := aFiltro[2] //com o filtro

If ( lInverte )
     cQrySC9    += " AND SC9.C9_OK<>‘"+cMark+"‘"
Else
     cQrySC9    += " AND SC9.C9_OK=‘"+cMark+"‘"
EndIf


//adicionando mais filtros
cQrySC9 += " AND SC9.C9_BLCRED=‘"+Space(Len(SC9->C9_BLCRED))+"‘"
cQrySC9 += " AND SC9.C9_BLEST=‘"+Space(Len(SC9->C9_BLEST))+"‘"
cQrySC9 += " AND SC9.C9_BLWMS IN(‘ ‘,‘05‘,‘06‘,‘07‘) "
cQrySC9 := ‘%‘ + cQrySC9 + ‘%‘

BeginSql Alias "PED"
SELECT * FROM %Table:SC9% SC9
WHERE
C9_BLEST = ‘‘
AND C9_BLCRED = ‘‘
AND %Exp:cQrySC9%
ORDER BY C9_CLIENTE
EndSql

//varre toda a tabela para criar array de selecionados

While !PED->(Eof())
     aadd(aPed, {alltrim(PED->C9_PEDIDO), PED->C9_ITEM, PED->C9_CLIENTE, PED->C9_LOJA,PED->C9_PRODUTO, PED->C9_QTDLIB, PED->C9_PRCVEN})
     dbskip()
Enddo

Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal