Версия для печати темы (https://pro1c.org.ua/index.php?s=a756f5197be090337fa1e74e3dab4301&showtopic=59791)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ Как создать таблицу с данными, которая отдельно может храниться 1с 7.7 конф 7.7.003

Автор: ZUBR 22.06.20, 23:35

Здравствуйте. У меня в офисе постоянно есть небольшое количество ремонтируемой техники. Есть отчет, который перебирает все документы и выделяет только те, которые имеют статус Времонте. Я хочу создать отдельную таблицу, в которой бы хранились ссылки на все документы ремонтируемых в данный момент аппаратов. Чтобы каждый раз не перебирать все документы. Далее программно можно осуществить удаление из таблицы ссылки на документ ремонтируемого аппарата в момент его выдачи. И также добавление новой ссылки при поступлении нового аппарата. Какой вид ресурсов программы для этого взять? Справочник? Регистр? А, может, можно как-то сохранять в виде документа список значений? Или таблицу значений? В виде реального объекта, а не виртуального. Чтобы он не создавался каждый раз, а реально присутствовал в памяти. Подскажите, пожалуйста, что лучше использовать и как? Мне нужен только сохраняемый список ссылок.
Спасибо!

Автор: Naghual 22.06.20, 23:59

Регистры. Только Регистры.

Автор: denis84 23.06.20, 7:25

ZUBR @ Сегодня, 0:35 * ,
Добрый день! Создать регистр "ДокументыРемонта". С измерениями например: Фирма(ваша), Документ. Потом при проведении документа со статусом "Времонте" сделать запись в этот регистр.
При изменении статуса документа или когда документ сделали не проведенным надо будет убрать запись с регистра

Автор: mut 23.06.20, 18:34

В 7.7 регистры так не работают, запись может быть только в привязке к проведенному документу. Если статусы изменяются внутри одного документа и документ при этом перепроводится - используйте регистр. Если в модуле проведения никакой записи не будет добавлено то ранее сделанная запись этого документа автоматически удалится.
Если события изменения статусов "разбросаны" по разным документам, то стоит использовать Справочник, в нем можно добавлять и удалять записи на свое усмотрение, независимо от документов.

Автор: Sharzem 24.06.20, 13:14

Цитата(mut @ 23.06.20, 18:34) *
В 7.7 регистры так не работают

icon_beer17.gif Підтримую.
Цитата(ZUBR @ 22.06.20, 23:35) *
Я хочу создать отдельную таблицу, в которой бы хранились ссылки на все документы

Таке реально якщо у Вас SQL. Навіть зміни в конфігурацію вносити не потрібно. Створюємо там відповідні таблиці і там зберігаємо і звідти дістаємо.
Чи зможете Ви таке реалізувати ? Якщо не знаєте механізм прямих запитів, не думаю...

Цитата(ZUBR @ 22.06.20, 23:35) *
Чтобы каждый раз не перебирать все документы.

Відбір в Загальному журналі документів. Хоча запит по "Статусу" також відпрацює швидко від початку тисячоліття.

Автор: ZUBR 24.06.20, 21:52

mut @ Вчера, 19:34 * ,
Мне нужно хранить только ссылки на документы. Сами документы хранить в регистре не нужно. Или я чего-то не понимаю?

Автор: Sharzem 25.06.20, 14:21

ZUBR @ Вчера, 21:52 * ,
Якщо розмова про Загальний журнал документів:
ЗакладкиОтбора(<ИмяОтбора>,<ФлагОтбораЗначенийВИнтервалеЖурнала>,<ФлагУстановкиЗначенияОтбора>,<ЗначениеОтбора>)
Назначение:
Установить в форме журнала закладки для интерактивного осуществления отбора.
Параметры:
<ИмяОтбора - строка с именем отбора;
<ФлагОтбораЗначенийВИнтервалеЖурнала> -:
1 - значения отбора выбираются по документам в установленном интервале журнала,
0 - значения отбора выбираются по всем документам журнала;
<ФлагУстановкиЗначенияОтбора> -:
1 - сразу выбирается отбор по параметру <ЗначениеОтбора>,
0 - отбор устанавливается на первое существующее значение;
<ЗначениеОтбора> - значение отбора.
Замечание:
Метод доступен только в контексте Модуля формы журнала.

Якщо вести мову про SQL, то Вам спочатку сюди: https://pro1c.org.ua/redirect.php?http://moonexcel.com.ua/%D1%83%D1%80%D0%BE%D0%BA%D0%B8-sql1-%D0%BC%D0%BE%D0%B2%D0%B0-%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%96-%D0%BF%D0%BE%D0%BD%D1%8F%D1%82%D1%82%D1%8F_ua
Описати "по швидкому" не зможу. Маэ бути розуміння.

Автор: rlinks 25.06.20, 15:40

Цитата(ZUBR @ 23.06.20, 0:35) *
Есть отчет, который перебирает все документы и выделяет только те, которые имеют статус Времонте. Я хочу создать отдельную таблицу, в которой бы хранились ссылки на все документы ремонтируемых в данный момент аппаратов. Чтобы каждый раз не перебирать все документы.


Если я правильно понял суть проблемы..
В отчете, чтобы не перебирать ВСЕ документы, сделай выборку документов по определенному значению реквизита, в данном случае это "Статус". Типа такого:
Док=СоздатьОбъект("Документ"); 
Док.ВыбратьПоЗначению(НачДата,КонДата,"Статус",ВРементе);
Пока Док.ПолучитьДокумент()=1 Цикл
...
КонецЦикла;


Выборку можно еще ограничить, если использовать определенный журнал перед ВыбратьПоЗначению:
Док.ИспользоватьЖурнал("ДокументыПоРемонту");






Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua