arefaste/1C_Forums huggingface dataset:
Здравствуйте, есть ссылка с госзакупок : https://zakupki.gov.ru/epz/order/notice/printForm/viewXml.html?regNumber=0115300018518000004 , которая возвращает xml данные по заказу. Уже пару недель как сделал задание. Запоздало задался вопросом это и есть API получается метода поиск на сайте? Или не API. Пишут в инете, что api это совокупность инструментов и функций в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой. Тут подходит слова про взаимодействие, а про интерфейс нет. Нет понимания как это должно выглядеть в оочию. Может этот случай поможет понять, осознать, принять)
---
интерфейс - это не обязательно окошки для тыканья мышкой на кнопки.
да, это и есть API.
---
интерфейс это более широкое понятие.
Вот выдержка из того же вики:
В наиболее общем смысле интерфейсом называется общая граница, через которую передаётся информация (стандарт ISO 24765)[3].
---
интерфейс - это не обязательно окошки для тыканья мышкой на кнопки.
да, это и есть API.
---
интерфейс это более широкое понятие.
Вот выдержка из того же вики:
В наиболее общем смысле интерфейсом называется общая граница, через которую передаётся информация (стандарт ISO 24765)[3].
---
API (от англ. Application Programming Interface — «программный интерфейс приложения»).
Добрый день.

Можно написать так:

```1c
    НачатьТранзакцию();
    <создание>
    Если ТранзакцияАктивна() Тогда
    ЗафиксироватьТранзакцию();
    КонецЕсли;
```

а можно так:

```1c
    НачатьТранзакцию()
    Попытка
    <создание>
    ЗафиксироватьТранзакцию()
    Исключение
    ОтменитьТранзакцию()
    КонецПопытки;
```

Как правильно? Почему?
Буду благодарен за ссылки на документацию или типовой код.
---
Видел статью, но забыл уже её. По-моему там описано как правильно писать код с транзакцией. https://habr.com/ru/post/419715/
---
https://its.1c.ru/db/v8std/content/783/hdoc
---
Видел статью, но забыл уже её. По-моему там описано как правильно писать код с транзакцией.

Хотел бы еще понять нужна ли она при создании документа (одного). Когда создаем два, и надо чтоб или создались оба или не одного - нужна. А если один документ создаем, без связанных объектов? А если то же самое, но в цикле (и нет необходимости "успешно все или ни одного")?
---
Не стоит усложнять код, явно используя метод НачатьТранзакцию, когда кроме записи объекта другие действия c базой данных не делаются – платформа при записи сама откроет транзакцию.
---
Видел статью, но забыл уже её. По-моему там описано как правильно писать код с транзакцией. https://habr.com/ru/post/419715/
---
там есть всё что вам нужно, почитайте
Здравствуйте!
Подскажите пожалуйста, есть ли какая нибудь типовая функция, в которую я передам параметром ссылку "Основные средства (справочник)" и на выходе получу данные с справочника "Номенклатура"
Нужно получить 2 дополнительных реквизита при печати.
Можно по идее с запросом, условие по наименованию (но мне кажется не совсем корректно получится)
---
а что мешает в запросе найти принятие, а из принятие найти необходимую номенклатуру.
---
а что мешает в запросе найти принятие, а из принятие найти необходимую номенклатуру.
---
Сейчас попробую такой вариант
---
Спасибо, вроде получилось)
Добрый день, создал новый реквизит и поместил в форму документа. Но при заполнении в форме предприятия если не сохранить то элемент автоматически раз в несколько секунд получает данные из реквизита. К примеру при открытии документа в элементе данные "12345", если допишу "123456789" то буквально через секунд 5-10 значение возвращается к форме "12345". При этом никакого события у элемента нет, не могу понять в какой момент это происходит и как поймать это событие в коде. Подскажите пожалуйста где искать.
Управляемые формы, платформа 8.3.20, сильно доработанная ут 10.3. Заранее спасибо за помощь.
---
Ищите:
1. Обработчик ожидания
2. события у реквизита типа автоподбора текста.
---
Попробуйте передавать на сервер без контекста. Да, в этом случае придется пошаманить (передавать форму или как-то еще).
---
Ищите:
1. Обработчик ожидания
2. события у реквизита типа автоподбора текста.
---
Действительно, данные элемента теряются когда обработчик ожидания попадает на сервер, но не могу понять почему другие элементы он не обнуляет. Как правильно в этом моменте записывать данные в реквизит и просто не терять данные
---
Попробуйте передавать на сервер без контекста. Да, в этом случае придется пошаманить (передавать форму или как-то еще).
---
Может в событиях формы или таблицы поискать? Чудес не бывает.
---
Если просто реквизит добавил, то ищи обработчик ожидания в ПриСозданиинаСервере или в ПриОткрытии. Хотя это странно. МБ платформа глючит
Возможно ли прогресс бар встроить в ячейку тз ?
У нас есть обработка выполнения плана по салонам и кассирам которая, показывает план и выполнение и хочется встроить такой бар в строку тз,
---
можно. Выводите |||||||||||||||||||||50% в ячейке..
---
Это не прогресс бар, а диаграмма Ганта
---
Скорее всего это данные, полученные по принципу Ганта. Но не сама диаграмма.
У Ганта нет группировок по независимым группирующим признакам.
---
Эт да, но лучше пусть человек что-то близкое по теме ищет (Гант), чем пытается к Жигулям пропеллер на педальной тяге прикручивать
---
Ну он же не откажется от встраивания Ганта в ячейку таблицы формы?
---
Надеюсь, что откажется — заливка цветом по ключевым значениям тут более чем достаточна.
---
а заливка же полностью окрашивает ячейку
---
Можно сделать несколько ячеек и закрашивать их.
---
можно. Выводите |||||||||||||||||||||50% в ячейке..
---
слишком просто)
---
ну это не то
Не могу выровнять элементы.
Было:

Добавляю реквизит СуммаОстатка. Договор и СуммаОстатка хочу разместить на одной строке. Создаю для этого группу. Уже после помещения в неё Договора он смещается:

Добавляю реквизит СуммаОстатка:

Как сделать так, чтобы слева все реквизиты были выровнены?
---
Оказалось интересное решение. Я всегда добавлял Группа-обычная группа, а ниже Группа- обычная группа без отображения. Я попробовал использовать её и всё идеально выровнялось.
---
Ну так договор в группе. Если нужно чтобы прям все ровно и красиво, сделай 2 группы с вертикальной группировкой: 1. декораций (заголовков полей) 2. полей ввода.
Это криво и не красиво по структуре формы, но это решение
---
Оказалось интересное решение. Я всегда добавлял Группа-обычная группа, а ниже Группа- обычная группа без отображения. Я попробовал использовать её и всё идеально выровнялось.
---
У меня возникла такая проблема при программном создании элементов формы. Помогло изменение свойства.
Элементы["ИмяГруппы"].СквозноеВыравнивание = СквозноеВыравнивание.Использовать;
Элементы["ИмяГруппы"].РастягиватьПоГоризонтали = Истина;
При ручном создании тот же эффект.
Добрый день, друзья!
Подскажите, как правильно сформировать УПД xml..

Формирую вручную без схемы, в итоге получается :

```1c
    <?xml version="1.0" encoding="windows-1251"?>
    <Файл ИДФайл="ON_NSCHFDOPPRMARK_820045282_820006482_20220527_71482­34a-dd85-11ec-b5da-d050996fd945" ВерсФорм="5.01" ВерсПрог="EDOLite 1.0">
```

Сохраняю как :

```1c
    ON_NSCHFDOPPRMARK_820045282_820006482_20220527_7148234a-dd85-11ec-b5da-d050996fd945.xml
```

Но при загрузке выдает ошибку :
Имя загружаемого файла: ON_NSCHFDOPPRMARK_820045282_820006482_20220527_7148234a-dd85-11ec-b5da-d050996fd945 не соответствует значению атрибута ИдФайл:

Что может быть не так ?
---
Попробуйте ИДФайл заменить на ИдФайл. По крайней мере при валидации по https://ediweb.com/files/kb/ru-ru/XSD/XSD-20-06-19/V2/ON_NSCHFDOPPOK_1_997_02_05_01_01.xsd ругается именно на это
---
Киньте сам файл
У вас между 71482 и 34a в ИДФайл нечитаемый символ(в ворде видно). Он там действительно есть или это форум добавил?
---
Возможно форум... В NotePud отсутствуют лишние символы
---
Вот файл,
(урезанный в связи с конфиденциальностью)
---
Попробуйте ИДФайл заменить на ИдФайл. По крайней мере при валидации по https://ediweb.com/files/kb/ru-ru/XSD/XSD-20-06-19/V2/ON_NSCHFDOPPOK_1_997_02_05_01_01.xsd ругается именно на это
---
Да, ошибка была в этом!) Спасибо!
---
Здравствуйте. При загрузке документа (УПД) в Честном знаке в формате XML произошла ошибка (документ из 1с переконвертировали из формата Exсel в XML) . Объясните пожалуйста причину. И возможно ли загрузить документ в другом формате?
   В загруженном файле 8145-4236_208190209130_23.08.2022_2_.xml обнаружены ошибки
Имя загружаемого файла: 8145-4236_208190209130_23.08.2022_2_ не соответствует значению атрибута ИдФайл:
 Подскажите пожалуйста как исправить ситуацию? Спасибо
Здравствуйте, есть ТЧ дока в нем поле составного типа справочниеСсылка и строка. Нужно подсветить красным в поле тип значения строка введен, а не справочник ссылка. В справке по программной работе с условным оформлением нашел отбор и там есть типЗначения значит как-то можно сравнить в отборе, но не пойму как в инете нет примеров ка как на тип значчения в отборе условного оформления сравнивать.

```1c
    ЭлементУО = УсловноеОформление.Элементы.Добавить();
    ПолеУО = ЭлементУО.Поля.Элементы.Добавить();
    ПолеУО.Поле = Новый ПолеКомпоновкиДанных(Элементы.Спека1Наименование.Имя;

    ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Спека1.Наименование");
    ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ОтборЭлемента.ТипЗНачения
```

Тут в крайней строке Вид сравнения видит а типЗначения после точки не дает подсказку.
---
справку не на тот тип смотрите.
в самом коде есть подсказка, на какой тип смотреть:
ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));

а у ЭлементОтбораКомпоновкиДанных нет свойства ТипЗначения.
---
справку не на тот тип смотрите.
в самом коде есть подсказка, на какой тип смотреть:
ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));

а у ЭлементОтбораКомпоновкиДанных нет свойства ТипЗначения.
---
Добавьте булевый реквизит формы в табличную часть и заполняйте его в зависимости от типа в колонке. А далее условное оформление на этот булевый реквизит формы.
Добрый день! Не могу придумать решение задачи.
У меня есть трудовой договор, который выводится в WORD. Есть параметр с типом текст. Который в зависимости от второго параметра может быть подчеркнутым. Как такое реализовать и в какой момент?
---
Решение вопроса,при выводе селекции

```1c
    Если ЗначениеЗаполнено(ДанныеСотрудника.ИспытательныйСрок) Тогда
    Селекция.GoTo(, , , "СрокСИспытанием").Select();
    Иначе
    Селекция.GoTo(, , , "СрокБезИспытания").Select();
    КонецЕсли;
    Селекция.Font.Underline = 1; //подчеркнуть
    Селекция.Font.Bold = 1; //жирным
```
---
конечно костыль, но вы же заранее знаете какой второй параметр - можете вызывать 2 разных макета (должен быть не табличный документ, а именно word), один с подчеркиванием, другой без. Либо открывать документ после через com и делать напрямую средствами word.
---
В типовой ситуации - никак. Вы просто отправляете значения в макет Word. Вы не можете управлять данным макетом.
---
Решение вопроса,при выводе селекции

```1c
    Если ЗначениеЗаполнено(ДанныеСотрудника.ИспытательныйСрок) Тогда
    Селекция.GoTo(, , , "СрокСИспытанием").Select();
    Иначе
    Селекция.GoTo(, , , "СрокБезИспытания").Select();
    КонецЕсли;
    Селекция.Font.Underline = 1; //подчеркнуть
    Селекция.Font.Bold = 1; //жирным
```
Формируем УПД для отправки по ЭДО в 1С - однако в документе нет сведений о маркируемой продукции (обувь) - что не так?
---
Все вопрос закрыт - как оказалось к документу создали документ отгрузки товара, из-за этого коды не отображались в ЭДО, как только удалили - коды перешли в ЭДО
---
Добрый день! А раньше передавались? если да, то ставили ли недавно какое-либо обновление конфигурации?
---
Раньше передавали через "Вывод из оборота" - сейчас поскольку передача только через ЭДО - столкнулись с такой вот неприятностью.
---
Все вопрос закрыт - как оказалось к документу создали документ отгрузки товара, из-за этого коды не отображались в ЭДО, как только удалили - коды перешли в ЭДО
В одной программе
КлассификаторЕдиницИзмерения - длина поля 3 символа
в другой
КлассификаторЕдиницИзмерения - длина поля 4 символа.

Как в Конвертации данных 2.0 при обмене делать поиск по такому полю?

Например, в 1с бухгалтерии 0312, в другой программе (1с) 312 т.е. одной из программ добавляется ведущий ноль.

Как решение, придумал создать в одной из программ реквизит у этого справочника и по нему делать синхронизацию.
Может можно как-то без доп.реквизита решить эту задачу?
---
Спасибо, получилось!

(поиск по гуиду, и продолжить поиск по полям поиска)
---
если проблема в лидирующем нуле, то решается просто:

в базе-источнике, в ПКС для поля "код" написать в "ПередВыгрузкой":

```1c
    Значение = Прав(Источник, 3);
```
---
в правилах обмена есть галка "автоматически приводить к длине приемника" в ПКС
---
Эта галка добавляет недостающий ноль к коду. И при загрузке получаются дубли кода.
(из базы где три символа -- > в базу где 4 символа)
т.к. по коду не находит.
---
Спасибо, получилось!

(поиск по гуиду, и продолжить поиск по полям поиска)
Здравствуйте, как получить дату приема на работу в общем модуле, 1С ERP?

Не через запрос
---
КадровыеДанныеСотрудников = КадровыйУчет.КадровыеДанныеСотрудников(Истина, Сотрудник, "ДатаПриема");
---
КадровыеДанныеСотрудников = КадровыйУчет.КадровыеДанныеСотрудников(Истина, Сотрудник, "ДатаПриема");
---
Возможно ещё знаете, как получить "Срок заключения договора" в 1с erp?
---
Там к строке получаемых кадровых данных добавить пару полей, чтобы получилось "ДатаПриема,СрочныйДоговор,СрокЗаключенияДоговора"

В ЗУП (и соответственно ERP) есть два метода получения кадровых данных:
КадровыйУчет.КадровыеДанныеФизическихЛиц() и КадровыйУчет.КадровыеДанныеСотрудников()
список данных, которые можно получить этими методами описаны в описании функций
КадровыйУчетВнутренний.ЗапросВТКадровыеДанныеФизическихЛиц()
КадровыйУчетВнутренний.ЗапросВТПостоянныеКадровыеДанныеФизическихЛиц()
КадровыйУчетВнутренний.ЗапросВТКадровыеДанныеСотрудников()
КадровыйУчетВнутренний.ЗапросВТПостоянныеКадровыеДанныеСотрудников()

ЗЫ: если речь идет о получении кадровых данных для списка сотрудников - надо сразу передать массив сотрудников в параметр функции вместо сотрудника.
Добрый день! Помогите пожалуйста с задачей. Есть динамический список, выводящий данные по основной таблице (т.е. без произвольного запроса). Поле списка (колонка) имеет составной тип (Строка, Дата). Необходимо отсортировать это поле. Подскажите, как лучше поступить?
Предполагаю, что можно было бы выгрузить (как?) значения поля в тз, там уже привести значения Строка к типу Дата (те, что имеют вид "День.Месяц.Год", они там такие например "01.09.2022", но имеют тип Строка), отсортировать и обратно.
Или есть уже типовые решения такой проблемы. Подскажите, пожалуйста.
Заранее спасибо!
---
либо написать обработку, которая перезаполнит строки датами, и в динамический список придут даты
---
Если нечто выглядит как утка, плавает как утка и крякает как утка, то это, вероятно, и есть утка.
Зачем хранить дату строкой?
---
Полностью с вами согласен, но ничего сделать с этим не могу, реструктуризацию делать нельзя
---
по каким причинам?
---
Могут расстрелять
---
в точку
---
Может оно и к лучшему...
---
скорее всего
---
ну как вариант решения в лоб, написать свой запрос для динамического списка, который будет преобразовывать строку в дату. Варианты преобразования строки в дату в запросе тут уже обсуждались.
---
либо написать обработку, которая перезаполнит строки датами, и в динамический список придут даты
---
Попробую так, спасибо
---
ну и в конфигурации найти место, которое кладет в реквизит дату в виде строки и там перехватывать и при записи конвертировать в дату. тогда в реквизите будут лежать даты. ну а в базе останется конечно составной тип. но реструктуризация не потребуется.
у меня на форме есть две таблицы значений в одной контрагенты в другой pdf расшифровки по всем контрагентам, подскажите пожалуйста как сделать так чтобы при нажатии на определенного контрагента в ТЗ с расшифровками отбирались только нужные расшифровки. можно ли используя УсловноеОформление просто скрыть ненужные ПДФки?
---
вы были правы. сделал так:
```1c
    Данные = Элементы.ДанныеЗагрузки.ТекущиеДанные;
    СтрОтбора = Новый ФиксированнаяСтруктура("КодЮЛ", Данные.КодДоговора);
    Элементы.ТаблицаРасш.ОтборСтрок = СтрОтбора;
```
---
Добавить поле КлючСвязи, и при выборе контрагента по ключу связи отбирать строки в расшифровках.
---
спасибо за подсказку попробую как тут сделать https://infostart.ru/public/187908/
---
Зачем добавлять новое поле, если оно уже есть и приведено на картинке?
---
вы были правы. сделал так:
```1c
    Данные = Элементы.ДанныеЗагрузки.ТекущиеДанные;
    СтрОтбора = Новый ФиксированнаяСтруктура("КодЮЛ", Данные.КодДоговора);
    Элементы.ТаблицаРасш.ОтборСтрок = СтрОтбора;
```
Добрый день граждане форумчане, есть такая проблема.
из обычной формы получаю управляемую форму, передаю ей параметры в виде структуры и открываю её (прошлую форму закрываю, называется "поиск")
Требуется при создании УФ сохранить эту структуру (потому что в УФ можно будет нажать на кнопку "ПОИСК" - которая должна открыть форму "Поиск" и заполниться по изначальной структуре. Как быть, во что сохранять, как?
Заранее спасибо!
---
В реквизите формы установить тип Произвольный, и хранить фиксированную структуру.

```1c
    МойРеквизит = Новый ФиксированнаяСтруктура(СтруктураСПараметрами);
```
---
В реквизит формы.
---
У нас есть типовые методы заполнения реквизита формы структурой? (или только через ТЗ или список значений)
---
В реквизите формы установить тип Произвольный, и хранить фиксированную структуру.

```1c
    МойРеквизит = Новый ФиксированнаяСтруктура(СтруктураСПараметрами);
```
---
Спасибо, помогли.
Простое любопытство. Это ведь просто так сделано? Или за этим что то стоит?
---
примитивная защита, чтобы не начиналось на цифру.
---
примитивная защита, чтобы не начиналось на цифру.
---
Теперь понятно. Да пожалуй в этом есть смысл.
Ребята, нужна помощь по такому вопросу.
Написал обработку по созданию авансового отчета в БП 3.0 из excel файла. При загрузке указывается счет учета.
Вкладка "Товары" заполняется, но некорректно: заполняется ТОЛЬКО счет учета, а если номенклатуру перевыбрать, то добавляется еще и субконто, и вообще настройки учета подтягиваются из вида номенклатуры. (см. скрин 1 и 2)

Как сделать так, чтобы при заполнения табличной части обработкой подтягивались также и настройки учета номенклатуры?
Буду рад за любые наводки на решение.
---
```1c
    НовыйДокумент.ДополнительныеСвойства.Вставить("ЗаполнитьСчетаУчетаПередЗаписью", Истина);
```

Это переда записью нового объекта надо добавить.
---
Добрый день! дописываем ручками вызов процедуры обработки строки ТЧ, после того как занесли номенклатуру. Найти ее можно и обращение ней в процедуре выбора номенклатуры формы или ее изменения. Т.е. аналитику строки заполняем, после того, как известна ссылка номенклатуры.
---
Наверное, нужно воспроизвести то, что делается в процедуре ТоварыНоменклатураПриИзменении в форме документа.
---
```1c
    НовыйДокумент.ДополнительныеСвойства.Вставить("ЗаполнитьСчетаУчетаПередЗаписью", Истина);
```

Это переда записью нового объекта надо добавить.
---
ЗаполнитьСчетаУчетаПередЗаписью", Истин
Спасибо, сработало!
Добрый день. Дорабатываю форму регламентированной отчетности. В пользовательском режиме поставил переключатель, чтобы отчет использовался из объекта метаданных, а не из файла (в объекте и в файле лежит идентичная форма отчета). Но при каждом создании нового отчета автоматически скачивается внешняя форма отчета из-за проставленной галочки в 1С Отчетности в настройках проверки актуальности отчетов - "Выполнять проверки регламентированной отчетности". И далее отчет опять автоматически заменяется на внешний. Снятие галочки приводит к тому, что не будет обновляться ни один отчет.
Есть какая-нибудь возможность запихнуть куда-нибудь этот единственный отчет, чтобы он не обновлялся?)
---
Есть какая-нибудь возможность запихнуть куда-нибудь этот единственный отчет, чтобы он не обновлялся? Правильный способ: расковырять процедуру обновления, найти место, где идентифицируются обновляемые отчеты и при помощи расширения (или модификации кода) исключить обновление именно этого отчета.

Неправильный способ (костыль): сохранить свой файл вместо стандартного и настройкой прав и атрибутов ("Только чтение", "Системный" и т.д.) заблокировать его удаление, тем самым предотвратив обновление.
---
Есть какая-нибудь возможность запихнуть куда-нибудь этот единственный отчет, чтобы он не обновлялся? Правильный способ: расковырять процедуру обновления, найти место, где идентифицируются обновляемые отчеты и при помощи расширения (или модификации кода) исключить обновление именно этого отчета.

Неправильный способ (костыль): сохранить свой файл вместо стандартного и настройкой прав и атрибутов ("Только чтение", "Системный" и т.д.) заблокировать его удаление, тем самым предотвратив обновление.
---
Придерживаюсь первого метода, с утра искал в обработке процедуру обновления, так и не нашел где он там обновляется
---
с утра искал в обработке процедуру обновления, так и не нашел где он там обновляется К вечеру (воскресенья?) задумайтесь о втором методе. :-)
---
:D Оставил вопрос на понедельник))
---
сделайте копию, задайте ему немного другое имя, например
ВашОтчет_Вариант2
ВашОтчет_Основной
---
Не подходит, потому что такой отчет не будет передаваться по 1С Отчетности
---
можно сохранить конфигурацию с нужной версией отчета
и после обновления (или перед отправкой отчетности) восстанавливать только этот отчет из сохраненной конфы
Добрый день.
СКД отчет...в запросе поле есть, а в Настройках нет? Чего-то я не догоняю
---
...
https://forum.infostart.ru/forum9/topic286718/#message2869157
---
...
https://forum.infostart.ru/forum9/topic286718/#message2869157
---
Спасибо бро!
Бухгалтерия для Казахстана, редакция 3.0, разработка для Казахстана: «1С-Рейтинг» (3.0.41.3)
Доброго дня, коллеги!

При открытии программу 1С интерфейс пустой. (Рис1)

помогите, пожалуйста, разобраться.
---
Добрый день! Пустой потому, как открывать надо на УФ (т.е. в тонком клиенте), а у вас она открылась в толстом.
---
Добрый день! Пустой потому, как открывать надо на УФ (т.е. в тонком клиенте), а у вас она открылась в толстом.
---
спасибо