Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия | |||
|
shtrix-kodirovanie_dokumentov [2021/03/03 11:30] tro |
shtrix-kodirovanie_dokumentov [2021/03/03 11:52] (текущий) tro |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| < | < | ||
| - | Функция ПолучитьШК128ДляВедомости(СсылкаНаДок, | + | </code> |
| - | + | ||
| - | ПараметрыШтрихКода = Новый Структура; | + | |
| - | ПараметрыШтрихКода.Вставить(" | + | |
| - | ПараметрыШтрихКода.Вставить(" | + | |
| - | ПараметрыШтрихКода.Вставить(" | + | |
| - | ПараметрыШтрихКода.Вставить(" | + | |
| - | + | ||
| - | + | ||
| - | // | + | |
| - | Попытка | + | |
| - | КомпонентШК = Новый COMОбъект(" | + | |
| - | Исключение | + | |
| - | КомпонентШК = Неопределено; | + | |
| - | Сообщить(" | + | |
| - | Возврат Неопределено; | + | |
| - | КонецПопытки; | + | |
| - | + | ||
| - | + | ||
| - | Если КомпонентШК <> Неопределено Тогда | + | |
| - | + | ||
| - | Если ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | ИначеЕсли ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | ИначеЕсли ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | ИначеЕсли ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | ИначеЕсли ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | ИначеЕсли ИмяМакетаДляШК = " | + | |
| - | ИмяМакетаДляШК = " | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | МойШтрихКод = Штрихкодирование.СформироватьШК128(СсылкаНаДок, | + | |
| - | + | ||
| - | Если ЗначениеЗаполнено(МойШтрихКод) Тогда | + | |
| - | + | ||
| - | ПараметрыШтрихКода.ТипКода = 4; //CODE128 | + | |
| - | ПараметрыШтрихКода.ОтображатьТекст = Ложь; | + | |
| - | ПараметрыШтрихКода.Сообщение = СокрЛП(МойШтрихКод); | + | |
| - | ПараметрыШтрихКода.ТекстКода = СокрЛП(МойШтрихКод); | + | |
| - | Возврат ПараметрыШтрихКода; | + | |
| - | Иначе | + | |
| - | Сообщить(" | + | |
| - | Возврат Неопределено; | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | КонецЕсли; | + | |
| - | + | ||
| - | + | ||
| - | КонецФункции | + | |
| + | < | ||
| </ | </ | ||
| < | < | ||
| - | Функция ПолучитьШК128ДляВедомости(СсылкаНаДок, | ||
| - | |||
| - | ПараметрыШтрихКода = Новый Структура; | ||
| - | ПараметрыШтрихКода.Вставить(" | ||
| - | ПараметрыШтрихКода.Вставить(" | ||
| - | ПараметрыШтрихКода.Вставить(" | ||
| - | ПараметрыШтрихКода.Вставить(" | ||
| - | |||
| - | |||
| - | // | ||
| - | Попытка | ||
| - | КомпонентШК = Новый COMОбъект(" | ||
| - | Исключение | ||
| - | КомпонентШК = Неопределено; | ||
| - | Сообщить(" | ||
| - | Возврат Неопределено; | ||
| - | КонецПопытки; | ||
| - | |||
| - | |||
| - | Если КомпонентШК <> Неопределено Тогда | ||
| - | |||
| - | Если ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | ИначеЕсли ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | ИначеЕсли ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | ИначеЕсли ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | ИначеЕсли ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | ИначеЕсли ИмяМакетаДляШК = " | ||
| - | ИмяМакетаДляШК = " | ||
| - | КонецЕсли; | ||
| - | |||
| - | МойШтрихКод = Штрихкодирование.СформироватьШК128(СсылкаНаДок, | ||
| - | |||
| - | Если ЗначениеЗаполнено(МойШтрихКод) Тогда | ||
| - | |||
| - | ПараметрыШтрихКода.ТипКода = 4; //CODE128 | ||
| - | ПараметрыШтрихКода.ОтображатьТекст = Ложь; | ||
| - | ПараметрыШтрихКода.Сообщение = СокрЛП(МойШтрихКод); | ||
| - | ПараметрыШтрихКода.ТекстКода = СокрЛП(МойШтрихКод); | ||
| - | Возврат ПараметрыШтрихКода; | ||
| - | Иначе | ||
| - | Сообщить(" | ||
| - | Возврат Неопределено; | ||
| - | КонецЕсли; | ||
| - | |||
| - | КонецЕсли; | ||
| - | |||
| - | |||
| - | КонецФункции | ||
| - | </ | + | </ |
| + | < | ||
| - | Функция ЧисловойКодПоСсылке(Ссылка) Экспорт | + | </code> |
| - | | + | |
| - | | + | |
| - | КонецФункции | + | |
| - | + | ||
| - | Функция ПреобразоватьИзШестнадцатиричнойСистемыСчисленияВДесятичноеЧисло(Знач Значение) | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | Результат = Результат * 16 + Найти(" | + | |
| - | | + | |
| - | | + | |
| - | КонецФункции | + | |
| - | + | ||
| - | Функция ПреобразоватьДесятичноеЧислоВШестнадцатиричнуюСистемуСчисления(Знач ДесятичноеЧисло) | + | |
| - | | + | |
| - | | + | |
| - | ОстатокОтДеления = ДесятичноеЧисло % 16; | + | |
| - | ДесятичноеЧисло | + | |
| - | Результат | + | |
| - | | + | |
| - | | + | |
| - | КонецФункции | + | |
| - | + | ||
| - | Функция ПолучитьСсылкуПоШтрихкодуТабличногоДокумента(Штрихкод, | + | |
| - | + | ||
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | ШтрихкодВШестнаднадцатиричномВиде = " | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | + " | + | |
| - | + " | + | |
| - | + " | + | |
| - | + " | + | |
| - | + | ||
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов = Новый Массив(); | + | |
| - | Для Каждого ЭлементМетаданных Из Метаданные.Документы Цикл | + | |
| - | | + | |
| - | КонецЦикла; | + | |
| - | | + | |
| - | МенеджерыОбъектов = Новый Массив(); | + | |
| - | Для Каждого ПустаяСсылка Из Менеджеры Цикл | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Документы[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Справочники[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Задачи[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(БизнесПроцессы[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(ПланыВидовХарактеристик[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | ТекстИсключения = НСтр(" | + | |
| - | ТекстИсключения = СтрЗаменить(ТекстИсключения," | + | |
| - | + | ||
| - | ВызватьИсключение ТекстИсключения; | + | |
| - | | + | |
| - | + | ||
| - | КонецЦикла; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | | + | |
| - | + | ||
| - | Попытка | + | |
| - | | + | |
| - | Исключение | + | |
| - | | + | |
| - | КонецПопытки; | + | |
| - | + | ||
| - | МетаданныеСсылки = Ссылка.Метаданные(); | + | |
| - | Если Не ПравоДоступа(" | + | |
| - | | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | МассивСсылок.Добавить(Ссылка); | + | |
| - | + | ||
| - | Если НЕ ПервыйЗапрос Тогда | + | |
| - | | + | |
| - | " | + | |
| - | | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | Запрос.Текст = Запрос.Текст + | + | |
| - | " | + | |
| - | |ИЗ " + МетаданныеСсылки.ПолноеИмя() + " КАК Таблица | + | |
| - | |ГДЕ Ссылка В (& | + | |
| - | |"; | + | |
| - | + | ||
| - | ПервыйЗапрос = Ложь; | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | | + | |
| - | Запрос.Параметры.Вставить(" | + | |
| - | Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(" | + | |
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | КонецФункции | + | |
| - | + | ||
| - | Функция ПолучитьСсылкуПоШтрихкодуТабличногоДокумента(Штрихкод, | + | |
| - | + | ||
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | ШтрихкодВШестнаднадцатиричномВиде = " | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | + " | + | |
| - | + " | + | |
| - | + " | + | |
| - | + " | + | |
| - | + | ||
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов = Новый Массив(); | + | |
| - | Для Каждого ЭлементМетаданных Из Метаданные.Документы Цикл | + | |
| - | | + | |
| - | КонецЦикла; | + | |
| - | | + | |
| - | МенеджерыОбъектов = Новый Массив(); | + | |
| - | Для Каждого ПустаяСсылка Из Менеджеры Цикл | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Документы[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Справочники[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(Задачи[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(БизнесПроцессы[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | МенеджерыОбъектов.Добавить(ПланыВидовХарактеристик[ПустаяСсылка.Метаданные().Имя]); | + | |
| - | + | ||
| - | | + | |
| - | ТекстИсключения = НСтр(" | + | |
| - | ТекстИсключения = СтрЗаменить(ТекстИсключения," | + | |
| - | + | ||
| - | ВызватьИсключение ТекстИсключения; | + | |
| - | | + | |
| - | + | ||
| - | КонецЦикла; | + | |
| - | | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | | + | |
| - | + | ||
| - | Попытка | + | |
| - | | + | |
| - | Исключение | + | |
| - | | + | |
| - | КонецПопытки; | + | |
| - | + | ||
| - | МетаданныеСсылки = Ссылка.Метаданные(); | + | |
| - | Если Не ПравоДоступа(" | + | |
| - | | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | МассивСсылок.Добавить(Ссылка); | + | |
| - | + | ||
| - | Если НЕ ПервыйЗапрос Тогда | + | |
| - | | + | |
| - | " | + | |
| - | | + | |
| - | КонецЕсли; | + | |
| - | + | ||
| - | Запрос.Текст = Запрос.Текст + | + | |
| - | " | + | |
| - | |ИЗ " + МетаданныеСсылки.ПолноеИмя() + " КАК Таблица | + | |
| - | |ГДЕ Ссылка В (& | + | |
| - | |"; | + | |
| - | + | ||
| - | ПервыйЗапрос = Ложь; | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | | + | |
| - | Запрос.Параметры.Вставить(" | + | |
| - | Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(" | + | |
| - | | + | |
| - | Возврат Новый Массив; | + | |
| - | | + | |
| - | + | ||
| - | КонецФункции | + | |