Perguntas Exibição campos tabela SB8
- pinheiro
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 91
- Obrigados Recebidos: 0
11 anos 10 meses atrás #9465
por pinheiro
Exibição campos tabela SB8 foi criado por pinheiro
Tive a necessidade de criar alguns campos customizados na tabela SB8 ( saldos por lote) para utilização especifica da empresa. Apesar te ter marcado a apresentação no Browse, quando consultamos o SALDO POR LOTE atravês da tecla F4 na digitação do Pedido de VENDAS (MATA410) estes campos não são apresentados.
Procurei algum ponto de entrada que permitisse inserir campos, mas não encontrei.
Alguem ja teve esta necessidade e sabe como resolver?
Agradeço,
Alexandre
Procurei algum ponto de entrada que permitisse inserir campos, mas não encontrei.
Alguem ja teve esta necessidade e sabe como resolver?
Agradeço,
Alexandre
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
11 anos 10 meses atrás #9468
por kanaamlrr
Respondido por kanaamlrr no tópico Re: Exibição campos tabela SB8
Cara, pelo que eu vi aqui, o F4 chama a função A440Saldo
Segue ela, está desatualizada, mas não encontrei nenhum PE
Segue ela, está desatualizada, mas não encontrei nenhum PE
/*/
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±
±±³Funcao ³A440Saldo ³ Autor ³Eduardo Riera ³ Data ³22.06.1999³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±
±±³Descri‡…o ³Demonstrativo do Saldo em Estoque para o modulo de Fatur. ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±³Retorno ³Nenhum ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±³Parametros³ExpL1: Indica se o produto eh uma referencia ³±±
±±³ ³ExpC2: Almoxarifado a ser consultado quando for grade. ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±³ DATA ³ Programador ³Manutencao Efetuada ³±±
±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±
±±³ ³ ³ ³±±
±±ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
/*/
Function a440Saldo(lRefer,cLocal)
Local nPProduto:= 0
Local nPLocal := 0
Local cProduto := CriaVar("B1_COD")
Local nColuna := aScan(aHeader,{|x| AllTrim(x[2]) == AllTrim(Substr(Readvar(),4))})
Local cMascara := GetMv("MV_MASCGRD")
Local nTamRef := Val(Substr(cMascara,1,2))
Local nStok := 0
Local oDlg
Local nX := 0
Local lBuscaProd:= .T.
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Se foi ativado atraves da Getdados normal ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
If ( !lRefer )
If cPaisLoc == "BRA"
nPProduto:= aScan(aHeader,{|x| Alltrim(x[2])=="C6_PRODUTO"})
cProduto := aCols[n][nPProduto]
nPLocal := aScan(aHeader,{|x| Alltrim(x[2])=="C6_LOCAL"})
cLocal := aCols[n][nPLocal]
Else
For nX := 1 to Len(aHeader)
nPProduto:= Ascan(aHeader,{|x| Trim(X[2]) == "C6_PRODUTO" .or.;
Trim(X[2]) == "D2_COD" .or.;
Trim(X[2]) == "CN_PRODUTO" })
nPLocal := Ascan(aHeader,{|x| Trim(X[2]) == "C6_LOCAL" .or.;
Trim(X[2]) == "D2_LOCAL" .or.;
Trim(X[2]) == "CN_LOCAL" })
If nPProduto > 0 .And. nPLocal >0
cProduto := aCols[n][nPProduto]
cLocal := aCols[n][nPLocal]
Else
lBuscaProd := .F.
Endif
Next
EndIf
Else
If nColuna > 0
If FindFunction("MsMatGrade") .And. IsAtNewGrd()
cProduto:= &(MaReadGrd()):GetNameProd(,n,nColuna)
Else
cProduto := Substr(SB4->B4_COD,1,nTamRef)+aCols[n][1]+aHeader[nColuna][1]
EndIf
Else
lBuscaProd := .F.
Endif
EndIf
If lBuscaProd
dbSelectArea("SB1")
dbSetOrder(1)
If ( MsSeek(xFilial()+cProduto,.F.) )
dbSelectArea("SB2")
dbSetOrder(1)
If MsSeek(xFilial()+PADR(cProduto,LEN(SB2->B2_COD))+cLocal,.F.)
nStok:= SaldoSb2(,GetNewPar("MV_QEMPV",.T.)) //(SB2->B2_QATU - SB2->B2_RESERVA - SB2->B2_QACLASS - SB2->B2_QEMP)
EndIf
DEFINE MSDIALOG oDlg FROM 62,1 TO 293,365 TITLE OemToAnsi(STR0009) PIXEL //"POSI€AO DO ESTOQUE"
@ 0, 2 TO 28, 181 LABEL "" OF oDlg PIXEL
@ 31, 2 TO 91, 181 LABEL "" OF oDlg PIXEL
@ 8, 4 SAY OemToAnsi(STR0010) SIZE 31, 7 OF oDlg PIXEL //"Produto :"
@ 7, 39 SAY cProduto + " /" + Subs(SB1->B1_DESC,1,20) SIZE 140, 7 OF oDlg PIXEL
@ 16, 5 SAY OemToAnsi(STR0011) SIZE 31, 7 OF oDlg PIXEL //"Local :"
@ 16, 39 SAY cLocal SIZE 13, 7 OF oDlg PIXEL
@ 37, 9 SAY OemToAnsi(STR0012) SIZE 92, 7 OF oDlg PIXEL //"Pedido de Vendas em Aberto"
@ 37, 118 SAY B2_QPEDVEN PICTURE PesqPict("SB2","B2_QPEDVEN",14,2) SIZE 53, 7 OF oDlg PIXEL
@ 45, 9 SAY OemToAnsi(STR0013) SIZE 88, 7 OF oDlg PIXEL //"Quantidade Empenhada"
@ 45, 118 SAY B2_QEMP PICTURE PesqPict("SB2","B2_QEMP",14,2) SIZE 53, 7 OF oDlg PIXEL
@ 53, 9 SAY OemToAnsi(STR0014) SIZE 88, 7 OF oDlg PIXEL //"Qtd.Prevista p/Entrar"
@ 53, 118 SAY B2_SALPEDI PICTURE PesqPict("SB2","B2_SALPEDI",14,2) SIZE 53, 7 OF oDlg PIXEL
@ 61, 9 SAY OemToAnsi(STR0015) SIZE 88, 7 OF oDlg PIXEL //"Quantidade Reservada (A)"
@ 61, 118 SAY B2_RESERVA PICTURE PesqPict("SB2","B2_RESERVA",14,2) SIZE 53, 7 OF oDlg PIXEL
@ 69, 9 SAY OemToAnsi(STR0016) SIZE 53, 7 OF oDlg PIXEL //"Saldo Atual (B)"
@ 69, 118 SAY B2_QATU PICTURE PesqPict("SB2","B2_QATU",14,2) SIZE 53, 7 OF oDlg PIXEL
@ 78, 9 SAY OemToAnsi(STR0017) SIZE 53, 7 OF oDlg PIXEL //"Dispon¡vel (B - A)"
@ 78, 118 SAY nStoK PICTURE PesqPict("SB2","B2_QATU",14,2) SIZE 53, 7 OF oDlg PIXEL
DEFINE SBUTTON FROM 98, 149 TYPE 1 ACTION (oDlg:End()) ENABLE OF oDlg
ACTIVATE MSDIALOG oDlg
Else
HELP(" ",1,"C6_PRODUTO")
EndIf
EndIf
Return
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.114 segundos