Jacek Kończewski

Jacek Kończewski Administrator /
Programista itd.,
BETA PHU sc

Temat: Procedura SQL - popraw pozycję zamówienia

Witam,

zgodnie z dokumentacją:
https://wapro24bis.assecobs.pl/plikownia/wf-mag/windows...
mam procedury na dodawanie zamówienia i jego pozycji.
RM_DodajPozycjeZamowienia_Server
(PS> ta dokumentacja ma tyle błędów, że tylko zapłakać)

WF-MAG Wersja Prestiż

Czy jest gdzieś ścieżka procedur do poprawy pozycji zamówienia OD ODBIORCY?
Po użyciu samej procedury RM_PoprawPozycjeZamowienia i użyciu później RM_ZatwierdzZamowienie_Server aplikacja WF-MAG nie chce otworzyć takiego zamówienia i zgłasza błędy w komunikacji z bazą.
Dane nagłówka się wypełniają, natomiast lista pozycji jest pusta.

RM_PoprawPozycjeZamowienia wykonuję we własnej transakcji. Sprawdziłem wszystkie zmienne - są prawidłowe.
DBCC opentran nie zwraca żadnych otwartych, pozostałych transakcji - wszystko się domyka.
tabela POZYCJA_ZAMOWIENIA porównując wiersze z innymi wygląda normalnie.

Zmienne @Wfmag... są pobrane prosto z tabeli POZYCJA_ZAMOWIENIA
Zmienne @pWfmag... są wrzucane jako zmienne z mojej własnej procedury.
Jak widać zmieniam tylko @ZAMOWIONO, @DO_REZERWACJI, @NARZUT i @OPIS

Wycinek:
SET XACT_ABORT, NOCOUNT ON;
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;

BEGIN TRY
BEGIN TRANSACTION;

EXEC wapro.dbo.RM_PoprawPozycjeZamowienia
@ZamowieniePozycjaId, --@ID_POZYCJI_ZAMOWIENIA T_ID_TYP,
@WfmagIdZamowienia, --@ID_ZAMOWIENIA T_ID_TYP,
@WfmagIdArtykulu, --@ID_ARTYKULU T_ID_TYP,
@WfmagKodVat, --@KOD_VAT varchar(3),
@pWfmagZamowiono, --@ZAMOWIONO T_ILOSC_TYP,
@WfmagZrealizowano, --@ZREALIZOWANO T_ILOSC_TYP,
@WfmagZarezerwowano, --@ZAREZERWOWANO T_ILOSC_TYP,
@pWfmagZamowiono, --@DO_REZERWACJI T_ILOSC_TYP,
@WfmagCenaNetto, --@CENA_NETTO T_MONEY_TYP,
@WfmagCenaBrutto, --@CENA_BRUTTO T_MONEY_TYP,
@WfmagCenaNettoWal, --@CENA_NETTO_WAL T_MONEY_TYP,
@WfmagCenaBruttoWal, --@CENA_BRUTTO_WAL T_MONEY_TYP,
1, --@PRZELICZNIK T_ILOSC_TYP,
@WfmagJednostka, --@JEDNOSTKA varchar(10),
@pWfmagNarzut, --@NARZUT T_PROCENT_TYP,
@pWfmagOpis, --@OPIS varchar(500),
2, --@ZNAK_NARZUTU T_CHECK_TYP, 2 = rabat
0, --@ID_WARIANTU_PRODUKTU T_ID_TYP,
'm' --@ZNACZNIK_CENY char(1)
-- ***********************************

COMMIT TRANSACTION;
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
SET NOCOUNT OFF;
END TRY

BEGIN CATCH
IF @@trancount > 0 ROLLBACK TRANSACTION;
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
;THROW
END CATCH

Z góry dziękuję za jakąś podpowiedź.Ten post został edytowany przez Autora dnia 08.06.18 o godzinie 10:21