Грешка
при проблем – "[Microsoft] [ODBC SQL Server драйвер] [SQL Server] Нарушаване на ограничението за ПЪРВИЧЕН КЛЮЧ PKRM30301 Не може да вмъкне дублиран ключ в обект RM30301" възниква, когато се изпълнява премахване на платени транзакции в управлението на вземания.
Забележка – Когато натиснете OK в този диалогов прозорец, се появява диалогов прозорец с информация, който посочва "Съхранената процедура в премахването на платени транзакции връща следните резултати: DBMS:2627, eEnterprise 0".
Потенциална
причина Има дублиран документ някъде в таблиците "Вземания". Обикновено това е дублиран номер на поредица.
Разделителна
способност 1. Изпълнете следното спрямо базата данни "Фирма", за да намерите записите, които причиняват грешката в RM30301: изберете
RMDTYPAL, DOCNUMBR, SEQNUMBR от групата RM10101 от
RMDTYPAL, DOCNUMBR, SEQNUMBR с
брой(*) > 1
2. Като използвате информацията, върната от предишната заявка, изпълнете следното, за да прегледате данните за конкретен номер на документ: изберете
SEQNUMBR като ИЗТРЪПВАНЕ, * от RM10101, където DOCNUMBR = "въведете номера на документа от реда на стъпка 1" от NUMBR
3. Актуализирайте полето SEQNUMBR, така че да няма дублиране. Използвайте ключа, предоставен по-долу. Ако имате 2 записа с SEQNUMBR от 16384, трябва да промените един от тях на 32768, ако имате 2 записа с 65536, трябва да актуализирате един до 81920 и т.н. Всеки ред от документа трябва да има свой собствен уникален seqnumbr в кратни на 16384.
актуализиране RM10101 set SEQNUMBR = XXX, където DEX_ROW_ID = XX
SEQNUMBR
-----------
16384
32768
49152
65536
81920 98304 Ако първият скрипт не връща
резултати, опитайте следните: изберете * от
RM10101 w, RM30301 h, където
w.RMDTYPAL = h.RMDTYPAL и
w.DOCИЗТРЪПВАНЕ = h.DOCИЗТРЪПВАНЕ и
w.SEQNUMBR = h.SEQNUMBR изберете
a.TRXSORCE,a.RMDTYPAL,a.DOCИЗТРЪПВАНЕ от RM20101 a, RM30301 b, където
a.RMDTYPAL = b.RMDTYPAL иa.DOCNUMBR = b.DOCNUMBR Тази статия е ИД на документ на
TechKnowledge:32359