Advertisement
HexelBerg

Untitled

Dec 11th, 2021
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.53 KB | None | 0 0
  1. КонтрольнаяСумма11 = 0;
  2. КонтрольнаяСумма12 = 0;
  3.  
  4. Для Индекс = 1 По 11 Цикл
  5.  
  6. // Расчет множителя для 11-го и 12-го разрядов.
  7. Если Индекс = 1 Тогда
  8. Множитель11 = 7;
  9. Множитель12 = 3;
  10. ИначеЕсли Индекс = 2 Тогда
  11. Множитель11 = 2;
  12. Множитель12 = 7;
  13. ИначеЕсли Индекс = 3 Тогда
  14. Множитель11 = 4;
  15. Множитель12 = 2;
  16. ИначеЕсли Индекс = 4 Тогда
  17. Множитель11 = 10;
  18. Множитель12 = 4;
  19. ИначеЕсли Индекс = 5 Тогда
  20. Множитель11 = 3;
  21. Множитель12 = 10;
  22. ИначеЕсли Индекс = 6 Тогда
  23. Множитель11 = 5;
  24. Множитель12 = 3;
  25. ИначеЕсли Индекс = 7 Тогда
  26. Множитель11 = 9;
  27. Множитель12 = 5;
  28. ИначеЕсли Индекс = 8 Тогда
  29. Множитель11 = 4;
  30. Множитель12 = 9;
  31. ИначеЕсли Индекс = 9 Тогда
  32. Множитель11 = 6;
  33. Множитель12 = 4;
  34. ИначеЕсли Индекс = 10 Тогда
  35. Множитель11 = 8;
  36. Множитель12 = 6;
  37. ИначеЕсли Индекс = 11 Тогда
  38. Множитель11 = 0;
  39. Множитель12 = 8;
  40. КонецЕсли;
  41.  
  42. Цифра = Число(Сред(ИНН, Индекс, 1));
  43. КонтрольнаяСумма11 = КонтрольнаяСумма11 + Цифра * Множитель11;
  44. КонтрольнаяСумма12 = КонтрольнаяСумма12 + Цифра * Множитель12;
  45.  
  46. КонецЦикла;
  47.  
  48. КонтрольныйРазряд11 = (КонтрольнаяСумма11 %11) %10;
  49. КонтрольныйРазряд12 = (КонтрольнаяСумма12 %11) %10;
  50.  
  51. Если КонтрольныйРазряд11 <> Число(Сред(ИНН,11,1)) ИЛИ КонтрольныйРазряд12 <> Число(Сред(ИНН,12,1)) Тогда
  52. СоответствуетТребованиям = Ложь;
  53. ТекстСообщения = ТекстСообщения + ?(ЗначениеЗаполнено(ТекстСообщения), Символы.ПС, "")
  54. + НСтр("ru = 'Контрольное число для ИНН не совпадает с рассчитанным.'");
  55. КонецЕсли;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement