Fórum
Ver pergunta

Criar uma reserva de encomenda de cliente após registar compra (entrada de stock)   

108 visualizações
0
0

Bom dia.

Considerando o cenário de haver uma encomenda de cliente de um artigo que não tem stock e que as reservas automáticas estão ativas, no momento do registo de uma compra, é possível associar a compra à encomenda e fazer a respetiva reserva pela opção de menu de contexto “Reserva de quantidades”. Como fazer o mesmo via extensibilidade?

Já consegui inserir a informação correta na tabela “INV_Reservas” através do seguinte:

         Public Shared Function AtualizaReservaPickIN() As Tuple(Of Boolean, String)
            Dim res As Tuple(Of Boolean, String) = New Tuple(Of Boolean, String)(False, String.Empty)
            Dim objReserva As InvBE100.InvBEReserva
            Dim linReserva As InvBE100.InvBELinhaReserva = Nothing
            Dim strErro As String = String.Empty
            Try
                objReserva = New InvBE100.InvBEReserva
                With objReserva
                    'FOR
                    linReserva = New InvBE100.InvBELinhaReserva
                    With linReserva
                        .Artigo = "0050"
                        .Armazem = "A1" 'armazem do doc compras
                        .Localizacao = "A1" 'loc do doc de compra
                        .Lote = "<L01>"
                        .Quantidade = 10 'quantidade pendente de reserva
                        .IdTipoOrigemOrigem = "8CB2C58B-4CC6-44C2-8114-99C0FAFBE558" 'tabela INV_TiposOrigem (compras)
                        .IdChaveOrigem = "691FCA67-023B-11EB-A49F-F44D304B1882" 'id da linha do doc COMPRA
                        .DescricaoOrigem = "VFA 2020/13" 'identificação unica do documento de COMPRA
                        .EstadoOrigem = "DISP" 'default do documento (?)
                        .IdTipoOrigemDestino = "011FC45A-50AE-46FA-A811-863A0CE6BDD6" 'tabela INV_TiposOrigem (vendas)
                        .IdChaveDestino = "273985CF-023B-11EB-A49F-F44D304B1882" 'id da linha do doc VENDA
                        .DescricaoDestino = "ECL 2020/9" 'identificação unica do documento VENDA
                        .EstadoDestino = "RES" 'default do estado de reserva do documento (?)
                        .TipoDocDestino = "ECL"
                        .ReservadoPor = 0 'ORIGEM
                    End With
                    objReserva.Linhas.Add(linReserva)
                    'NEXT
                End With
                If GSV_Motor.Inventario.Reservas.ValidaActualizacao(objReserva, strErro) Then
                    GSV_Motor.Inventario.Reservas.Actualiza(objReserva)
                    res = New Tuple(Of Boolean, String)(True, String.Empty)
                Else
                    res = New Tuple(Of Boolean, String)(False, strErro)
                End If
            Catch ex As Exception
                res = New Tuple(Of Boolean, String)(True, ex.Message)
                Err.Clear()
            Finally
                objReserva = Nothing
                linReserva = Nothing
                strErro = Nothing
            End Try
            Return res
        End Function

Problema: quando tento desfazer a reserva pelo editor de compras, no quadro de Reserva de quantidades, não aparece nada!

 

Falta-me algum passo para fazer a reserva de forma correta?

 

Obrigado.

Faça login para poder traduzir
V10
Marcado como spam
Criado há 3 anos e 7 meses ricardorodrigues