Идентификатор строки что это

1С получить идентификатор строки табличной части

Следует отметить, что свойство ТекущиеДанные содержит коллекцию значений текущей строки, соответствующую коллекции колонок отображаемого динамического списка, при этом если нужного поля нет в текущих данных, то его можно добавить в коллекцию полей списка используя метод Добавить() коллекции колонок списка.

Свойство ТекущиеДанные предназначено для получения значений колонок текущей строки, а свойство ТекущаяСтрока для получения и установки текущей строки табличного поля.

Следует понимать, что для объектных данных (Справочник, Документ и т.д.) в качестве значения свойства ТекущаяСтрока используется ссылка на объект базы данных. Соответственно при обращении к свойствам этого значения будет выполняться считывание объекта базы данных.

Выполняет поиск элемента списка значений по идентификатору.

Синтаксис

Метод НайтиПоИдентификатору() имеет следующий синтаксис:

А также альтернативный англоязычный синтаксис:

Параметры

Описание параметров метода НайтиПоИдентификатору() :

Имя параметраТипОписание
ИдентификаторЧислоИдентификатор элемента списка значений.
Жирным шрифтом выделены обязательные параметры

Возвращаемое значение

Описание

Доступность

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

Пример использования

Пример кода с использованием метода НайтиПоИдентификатору() :

Хранилище = Новый ХранилищеЗначения ( Соответствие );
КонецПроцедуры

Источник

1С получить идентификатор строки табличной части

Следует отметить, что свойство ТекущиеДанные содержит коллекцию значений текущей строки, соответствующую коллекции колонок отображаемого динамического списка, при этом если нужного поля нет в текущих данных, то его можно добавить в коллекцию полей списка используя метод Добавить() коллекции колонок списка.

Свойство ТекущиеДанные предназначено для получения значений колонок текущей строки, а свойство ТекущаяСтрока для получения и установки текущей строки табличного поля.

Следует понимать, что для объектных данных (Справочник, Документ и т.д.) в качестве значения свойства ТекущаяСтрока используется ссылка на объект базы данных. Соответственно при обращении к свойствам этого значения будет выполняться считывание объекта базы данных.

Выполняет поиск элемента списка значений по идентификатору.

Синтаксис

Метод НайтиПоИдентификатору() имеет следующий синтаксис:

А также альтернативный англоязычный синтаксис:

Параметры

Описание параметров метода НайтиПоИдентификатору() :

Имя параметраТипОписание
ИдентификаторЧислоИдентификатор элемента списка значений.
Жирным шрифтом выделены обязательные параметры

Возвращаемое значение

Описание

Доступность

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

Пример использования

Пример кода с использованием метода НайтиПоИдентификатору() :

Хранилище = Новый ХранилищеЗначения ( Соответствие );
КонецПроцедуры

Источник

Уникальный идентификатор в 1С

ДанныеСтроки – метод таблицы формы, возвращающий данные строки 1с в виде структуры. Идентификатор нужной строки передается в параметре.

Получение идентификаторов строк

Так как параметром метода ДанныеСтроки является идентификатор, важно знать откуда его можно получить:

Синтаксис

Метод НайтиПоИдентификатору() имеет следующий синтаксис:

А также альтернативный англоязычный синтаксис:

Табличная часть

Многие объекты метаданных в 1С могут иметь табличную часть. У одного объекта может быть создано неограниченное количество табличных частей.

Табличная часть может быть создана только как подчиненный объект у какого-либо объекта метаданных, например у справочника или у документа.

Строка табличной части не является отдельным объектом. К строке можно обратиться только по индексу строки в табличной части.

Программно нельзя создать табличную часть через конструктор. Можно только получить к ней доступ через основной объект:

//через объект получаем доступ к табличной части СписокУслуг

Уникальность

Разговор про уникальность необходимо начинать с того, что такое GUID (Globally Unique Identifier) и как этот GUID формируется.

Событие, состоящее в выпадение двух абсолютно одинаковых чисел из последовательности, максимальный член которой имеет порядок 10 в 38 степени, очевидно, является маловероятным. Именно на этом и основан принцип глобального уникального идентификатора.

Каждый идентификатор содержит 128 бит информации, записанный в виде шестнадцатиричного числа ( в 1С имеет вид a96ca0cd-b164-11e6-80c2-00155d001fe4). Простенький код (Рис.1) позволяет получить УИ любого элемента базы данных.

Идентификатор строки что это. Смотреть фото Идентификатор строки что это. Смотреть картинку Идентификатор строки что это. Картинка про Идентификатор строки что это. Фото Идентификатор строки что этоРис.1

Конечно, полностью гарантировать уникальность отдельно взятого значения невозможно. Однако, шансы на то, что при работе приложений и сервис возникнут два разных объекта с одинаковым GUID крайне малы.

Строка табличной части

Добавить новую строку табличной части можно с помощью методов Добавить и Вставить. Через точку от строки табличной части можно обращаться к реквизитам строки:

//добавление строки табличной части

//для метода Вставить нужно указать индекс строки

//у строки есть предопределенная колонка НомерСтроки

//в отличии от индексов номера строк начинаются с 1

Параметры

Описание параметров метода НайтиПоИдентификатору() :

Источник

Есть ли у строки в ТЧ документа уникальныйИдентификатор?

(19)
Делаю синхронизацию с внешней системой.

Да ладно, парни, я всё понял.

(26)
«2) 1С переписывает те строки ТЧ, которые менялись
3) 1С переписывает все строки ТЧ, если изменился порядок строк.»

И конечно же из этого следует, что UID строке не нужен.

Совсем 1С мозги проела?

(29)
Да меня как бы не совсем взолновывает, как это было у 1С.
И внешний UID завести совсем не проблема.

Так системы не проектируют, как бы.

для SQL у строки ДОЛЖЕН быть идентификатор, только не в виде гуида а в виде индекса строки в таблице (не путать с номером в табличной части), без этого кластеризованый индекс не построить.

только этот идентификатор в 1с недоступен 🙂 это уровень базы данных

а по сколько 1с работает не только под SQL то и реализация этого ключа может быть разная, или он может вообще отсутствовать.

По этому не нужно связывать 1с и SQL это «красный» и «теплый»

(42)
Ну, тутошнему люду UID у строки «и нафиг не нужен».
Звучит весомо.

А как насчет редактирования одного документа несколькими людьми?

А разрешение коллизий в разных узлах ИБ на уровне строк?

Все изменения будут приняты?

(43) вполне нормальным будет решение документ+РегистрСведений, при этом ты все свои вопросы решаешь, да и устроки РС есть идентификатор доступный внутри 1с.

(44)
» значит ты не правильно спроектировал документы «

Увы, есть варианты, когда бизнес-процессы утверждаются сверху.

Могу привести примеры.

Торговые представители работают с контрагентами. С одним контрагентом могут работать неограниченное количество торговых.

У каждого свой тип товара, каждый работает только в своей зоне.

Все это решалось договорами и различными привязками к этим договорам.

Но иной клиент хочет всё в ОДНОЙ накладной + вести взаиморасчеты по этой накладной.

Но торговый всё также должен иметь/влиять только на свою зону отвественности.

Ну вот и всё. Документ по сути могут реадктировать несколько людей, причем значительно разнесенных в пространстве.

отлично. Давайте теперь каждый обновляльщик типовых выдумает «похожую» задачу и что-нибудь здесь пропищит. Сводные документы уже вход пошли.

В каждой нормальной системе у сущности есть PK. не нужен он только 1С-никам и уппыристам, у них и без того забот полон рот.

(56) пойми, что в 1с документ это и есть неделимая сущность! и у документа есть свой UID.

просто ты по недопонимаю патаешся решить свою задачу одной сущностью, а это не правильно в корне.

разумеется, будет в итоге синхронизация на уровне строк.

Меня упертость отдельных лиц восхищает, которые согласны на сервер посылать ВСЕ строки в принципе, ради одной удаленной или добавленной.

Идентификатор строки что это. Смотреть фото Идентификатор строки что это. Смотреть картинку Идентификатор строки что это. Картинка про Идентификатор строки что это. Фото Идентификатор строки что это

(62)
«ну, эта ситуация встречается в одном случае из 50 миллионов»

Дедушка, какая ситуация? Ты уверен, что правильно буквы понял?

«если в 99,9% случаев никто никаких строчек не удаляет и порядок строк не меняет?»

То есть, в твоей базе, после создания документы вообще никто не редактирует? Типа в коде запретил? Правильно, нечего.

Очень редко возникает ситуация, когда юзеры меняют состав строк в ТЧ.

Очень редко возникает ситуация, когда юзеры удаляют строку.

Мда. Чоткие у вас юзеры, чо.

(71) Решение задачи в лоб. Не лучшее в данном случае решение.
А если так:
1. Торговые представители оформляют заявки от покупателя.
2. На складе, в логистике, выписавают на основаниии заявок один документ отгрузки. который отправляетс заказчику.

Это типовой метод, как ни странно.

вообще самое логичное решение конкретной задачи:

1. менеджеры создают N предворителельных документов
2. ответсвенный за выдачу генерит на основании одну накладную
3. при необходимости изменения данных менеджерами они создают сторнирующие документы

при таком подходе и накладная будет одна и данные при обмене не потеряются и будет история об каждой сторнировке.

У 1С ноги растут из «одна база на одно рабочее место». Кто то будет с этим спорить?

Если подавляющему большинству нормальная распределенка вообще не впилась (они себе вообще её слабо представляют), то это не значит, что её вообще не должно быть.

Источник

Использование свойства Текущая строка 1С

ТекущаяСтрока — свойство таблицы формы, содержащее идентификатор текущей строки. Тип свойства может различаться в зависимости от источника таблицы. Для всех источников, кроме динамического списка текущая строка 1с — это числовой идентификатор. Для динамического списка возможны несколько вариантов

Применение свойства Текущая строка 1С

Рассмотрим несколько способов практического применения свойства ТекущаяСтрока. С его помощью можно изменить текущую строку таблицы форы, получить строку таблицы источника и т. д.

Изменение текущей строки таблицы

Свойство ТекущаяСтрока доступно не только для чтения, но и для изменения. Таким образом с его помощью мы можем изменить текущую строку таблицы формы.

Пример 1. Для динамического списка справочника Номенклатура, создать процедуру изменяющую текущую строку списка. В качестве новой текущей строки, использовать ссылку на элемент справочника, переданную в параметре.

Заметим, что если строки с указанной ссылкой не будет найдена в таблице формы, то свойство ТекущаяСтрока примет значение Неопределено. Что означает отсутствие текущей строки таблицы.

Получение строки источника

Так как свойство ТекущаяСтрока является идентификатором, его можно использовать в качестве параметра метода НайтиПоИдентификатору. При помощи данного метода можно получить строку источника таблицы формы (нельзя использовать для динамического списка). Так как строку источника можно искать и использовать не только на клиенте, но и на сервере, это дает некоторое преимущество, над свойством таблицы формы ТекущиеДанные.

Пример 2. В серверной процедуре получить данные текущей строки таблицы значений ТаблицаТоваров, которая расположена на форме.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *