Python-сообщество
- Начало
- » Базы данных
- » получение GUID из 1с
#1 Сен. 16, 2021 16:35:44
kirikys Зарегистрирован: 2021-09-16 Сообщения: 1 Репутация: 0 Профиль Отправить e-mail
получение GUID из 1с
Добрый день.
Необходимо получить GUID из 1с.
что уже только не пробовал, все реквизиты документов получаю, а вот ссылку для получения ГУИДа не могу получить.
Соединение идет через COM(только так, через http возможности нет).
# -*- coding: cp1251 -*- import win32com.client import pythoncom Connection_Str = "***" pythoncom.CoInitialize() v83 = win32com.client.Dispatch("V83.COMConnector").Connect(Connection_Str) q=''' ВЫБРАТЬ первые 1 ПриемНаРаботуВОрганизацию.Ссылка Как Link ИЗ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию ''' query = v83.NewObject("Запрос", q) sel = query.Execute().Choose() while sel.next(): print(sel.Link)
#2 Сен. 16, 2021 22:50:24
Rodegast От: Пятигорск Зарегистрирован: 2007-12-28 Сообщения: 2640 Репутация: 179 Профиль Отправить e-mail
получение GUID из 1с
Ну и если тебе понадобился GUID из 1с, то скорее всего ты делаешь что то не так.
С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.
получение GUID из 1с — Python — Ответ 15713802
Добрый день.
Необходимо получить GUID из 1с.
что уже только не пробовал, все реквизиты документов получаю, а вот ссылку для получения ГУИДа не могу получить.
Соединение идет через COM(только так, через http возможности нет).
Кликните здесь для просмотра всего текста
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
# -*- coding: cp1251 -*- import win32com.client import pythoncom Connection_Str = "***" pythoncom.CoInitialize() v83 = win32com.client.Dispatch("V83.COMConnector").Connect(Connection_Str) q=''' ВЫБРАТЬ первые 1 ПриемНаРаботуВОрганизацию.Ссылка Как Link ИЗ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию ''' query = v83.NewObject("Запрос", q) sel = query.Execute().Choose() while sel.next(): print(sel.Link)
| Меню пользователя @ kirikys |
Как выгрузить ассортимент с GUID из 1С?
мне надо вытащить оттуда Список номенклатуры с GUID-ами. Как это сделать ?
- Вопрос задан более трёх лет назад
- 2481 просмотр
Комментировать
Решения вопроса 1

Antonio Solo @solotony Автор вопроса
покоряю пик Балмера
В общем проще оказалось сваять обработку, взяв за основу выгрузку из инета
// Выполним запрос к справочнику Номенклатуры // Получим Таблицу Значений Функция ПолучитьНоменклатуру() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 100000 | Номенклатура.Ссылка, | Номенклатура.Код, | Номенклатура.Родитель, | Номенклатура.Наименование |ИЗ | Справочник.Номенклатура КАК Номенклатура"; Результат = Запрос.Выполнить(); ТаблицаЗначений = Результат.Выгрузить(); возврат ТаблицаЗначений; КонецФункции // ПолучитьНоменклатуру() // Создаем строку загоовков для CSV-файла Функция СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель) //разделитель = "|"; колонкиТЗ=ТаблицаЗначений.колонки; Для каждого колонка Из колонкиТЗ Цикл стрКолонки = "" + стрКолонки + колонка.Имя + разделитель ; КонецЦикла; Возврат стрКолонки; КонецФункции // Создаем текст CSV: // текст заголовков и // текст данных Функция СоздатьДанныеCSV(ТаблицаЗначений,разделитель) текст=""; для каждого запись из ТаблицаЗначений Цикл если текст="" тогда текст=СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель) + Символы.ПС; КонецЕсли; сообщить(запись.Наименование); текст = текст + запись.Ссылка.УникальныйИдентификатор() + разделитель + запись.Код + разделитель + запись.Родитель + разделитель + запись.Наименование + Символы.ПС; КонецЦикла; //сообщить(текст); Возврат текст; КонецФункции // // Запишем данные в файл Функция ЗаписатьCSV(текст,имяФайла) кодировка = КодировкаТекста.ANSI; ТекстовыйФайлЗапись = Новый ЗаписьТекста(имяФайла,Кодировка); ТекстовыйФайлЗапись.ЗаписатьСтроку(текст); ТекстовыйФайлЗапись.Закрыть(); Возврат 0; КонецФункции // ЗаписатьCSV() // Основная логика: Функция ВыгрузитьВCSV(имяФайлаCSV); разделитель = "|"; ТаблицаЗначений = ПолучитьНоменклатуру(); текст = СоздатьДанныеCSV(ТаблицаЗначений,разделитель); ЗаписатьCSV(текст,имяФайлаCSV); КонецФункции // Начало ВыгрузитьВCSV("C:\work\my.csv");
Как получить УникальныйИдентификатор (guid) с помощью консоли запросов 1С?
Возможно ли вывести УникальныйИдентификатор (GUID) вместо обычной ссылки с помощью простой консоли запросов в 1С? Как должен выглядеть текст запроса? Например, чтобы получить УникальныйИдентификатор номенклатуры.
- Вопрос задан более двух лет назад
- 6006 просмотров
5 комментариев
Простой 5 комментариев

Цель данного вопроса? Зачем GUID в запросе?
Luna999 @Luna999 Автор вопроса
Sgr_A, цель — получить список УникальныхИдентификаторов тех или иных элементов

Luna999, это пересказ вашего первоначального вопроса. Я вам о другом. Для чего вам этот список GUID и почему именно в консоли нужно? Может вы не по тому пути идете, решения именно вашего вопроса. Возможно вам подойдет другой подход.
Luna999 @Luna999 Автор вопроса
Sgr_A, именно в консоли потому что для меня (пользователя) других вариантов не вижу. Для чего список — чтобы сопоставить элементы с сайтом.

чтобы сопоставить элементы с сайтом
— это уже конкретная цель, исходя из нее можно уже как-то формулировать ответы.
Решения вопроса 1

Могу посоветовать использовать Инструменты разработчика от Tormozit.

После выполнения запроса нажать на кнопку (см. скриншот) и выведется GUID.
P.S. Если основной режим работы у Вас — «Управляемое приложение», просто запустите из под обычного.
Ответ написан более двух лет назад
Комментировать
Нравится 1 Комментировать
Ответы на вопрос 4

Андрей Шамин @WhiteSsnoww
Программист
На языке запросов — никак.
Однако, есть удобный набор обработок — Инструменты разработчика
В инструментах разработчика можно выводить результаты запроса с отображением гуидов ссылок и вообще в любых списках справочников и документов. Рекомендую.
