DB.LineParts

From SunFlurry wiki
Revision as of 08:43, 7 February 2021 by Admin (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  LineParts (Строчные части объекта)
Объект:Объект базы данных
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Сервер и БД
Исключения:Неверная строчная часть
Визуальность:Нет

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

Синтаксис

DB.LineParts(<Наименование строчной части (STRING)>):<Список строчных частей или таблица строчной части (LIST,TAB)>

Аргументы

  • <Наименование строчной части (STRING)> - (необязательный аргумент) Указывает на наименование строчной части объекта, таблицу которой необходимо получить, если этот аргумент не указан, функция получает таблицы всех строчных частей объекта.

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

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

Примеры

//Фрагмент производит изменения реквизитов строчной части "Номенклатура" объекта aEl
//При работе со строками, используется функция Lock(), так как фрагмент предполагает,
//  что таблица строчной части выведена на экран и последовательные изменения будут выполняться медленнее,
//  чем полное обновление таблица после всех изменений.
aEl:=Form.Object;
aTab:=aEl.LineParts("Номенклатура");
aTab.Lock();
Try
  aTab.Select();
  While aTab.Next() Do
    //Если Сумма строки равна нулю, заполним ее заново из периодического реквизита Цена элементов справочника aTab.Номенклатура, полученного на сегодняшний день
    If aTab.Сумма=0 Then
      aTab.Цена:=aTab.Номенклатура.Цена(Date());
      aTab.Сумма:=aTab.Цена*aTab.Количество;
    EndIf;
  EndDo;
Finally
  aTab.Unlock();
EndTry;