Дополнительные табличные части формы документа #294309


#0 by 1C_novichok
Господа помогите справиться с такой задачей...Срок - до вечера, но я чес говоря тока начинаю и абсолютно не представляю что делать. Заранее СПАСИБО! "нужно разработать механизм работы с дополнительными табличными частями формы документа. т.к. в семерке для документа может быть только одна табличная часть... при необходимости использования дополнитльных возникает вопрос как это дело и где хранить, как обрабатывать. после консультаций с программерами пришли к тому, что в данном конкретном случае варианта два: хранение доп. табличных частей в подчиненных документах; хранение табличных частей в полях строкового типа неограниченной длины в формате xml. в любом случае для работы с этими дополнительными табличными частями нужны универсальные обработки/процедуры/функции. Нужно продумать оба этих варианта. протестировать оба вариант на скорость и удобство работы пользователя и к вечеру реализовать хотя бы тестовые варианты для обоих случаев, либо полный вариант для одного из вариантов. нам нужно как-то хранить дополнитльные табличные части и как-то с ними работать. табличные части должны поддерживать интерактивный ввод. Возможно, прийдется использовать таблицы, созданные компонентой vtools.dll, т.к. стандартные не совсем удобны в плане интерактивного ввода." Плиз!
#1 by ТелепатБот
#2 by Программист 484
Нефига себе задания дают. Хранение в xml может не подойти если: пример хранишь ты там ссылку на товар (допустим его идентификатор) а если он менятся - ты в дауне. Там есть еще ряд минусов... Вобщем рекомендую через подчиненные документы.
#3 by Ёпрст2
#4 by 1C_novichok
Спасибо ! А можно более подробно?.. Я ваще не представляю как это реализовать...
#5 by DrShad
реализовывали такое через тз и хранили их в строках неограниченной длины - никаких проблем не наблюдалось
#6 by DrShad
+ главное чтоб то что содержит табличная часть учавствовало в проводках
#7 by igork1966
Прощай ссылочная целостность... это так называется.  ;-)
#8 by DrShad
и как же она до сих пор не нарушилась?
#9 by Программист 484
А если идентификатор поменять?
#10 by 1C_novichok
Пример я рассматриваю, думаю разберусь, но вот что делать с этим : "нужны универсальные обработки/процедуры/функции." Заранее СПАСИБО!
#11 by igork1966
Не удаляли объекты... объекты "числились" еще где-то...
#12 by DrShad
а нах тогда голова?
#13 by Ёпрст2
Там всё есть в демо-примере ...
#14 by igork1966
Кроме того вы насколько я понял использовали на форме ТЗ? Логичнее тогда сделать ТЧ примерно такого вида: ИмяРеквизита Значение Загружать при открытии в ТЗ... никаких проблем со ссылочной целостность. PS. Но редактирование ТЗ на форме несколько неудобно.... Посему логичнее все-таки использовать подчиненные документы. Я так делал... проблем особых нет.
#15 by DrShad
а редактировать подчиненные документы удобнее?
#16 by igork1966
Не в пример удобнее. По кнопке выпадает окно с еще одной табличной частью...
#17 by Программист 484
а можно и не окно а через закладки это сделать.
#18 by Программист 484
+ а можно и не окно а через закладки это сделать.
#19 by igork1966
(17,18) ;-o    Как? Штатными средствами?
#20 by Зарбазан
В некоторых случаях удобнее ТЧ хранить не в подч. документе, а в справочнике. Хранение во внешних файлах (dbf,xml) или в строке неограниченной длинны плохо нарушением ссылочной целостности, как уже говорилось. За исключением случаев, когда в ТЧ хранятся только простые типы данных
#21 by Программист 484
+1
#22 by DrShad
в любом случае новичку этого доверять нельзя
#23 by Gepard
>после консультаций с программерами пришли к тому, что в данном конкретном случае >варианта два: хранение доп. табличных частей в подчиненных документах; хранение >табличных частей в полях строкового типа неограниченной длины в формате xml. а нафига XML, когда есть замечательная штука, как ЗначениеВСтроку ??? Делаем много таблиц значений и каждую упаковываем в свой реквизит...
#24 by 1C_novichok
В приведенном примере при открытии родительского дока открывается форма и в ней
#25 by 1C_novichok
Р.S. таблица из подчиненного дока.А если например подчиненных доков несколько - каким образом открывать форму с нужной таблицей ? Спасибо!
#26 by igork1966
В что-ли? Так там ТЗ на форме... со всеми вытекающими неудобствами.
#27 by 1C_novichok
Сорри, ну а какие есть ещё варианты с ТЗ?
#28 by 1C_novichok
"В документе нужно несколько табличных частей и АПи для работы с ними. по аналогии с восьмеркой." универсальные функции нужны. Подскажте плиз!
#29 by igork1966
см
#30 by Ёпрст2
Чем вам подчиненные доки не угодили ? ...
#31 by Аслан
Аналогичную проблему решил след.образом: данные хранил в строковой переменной неограниченный длины. Для разделения ячеек использовал "¤", пришлось в процедурах при открытии и записи дописать пару десятков строк. Есть конечно свои плюсы и минусы данного метода.
#32 by igork1966
Еще раз: на ссылочную целостность наплюем? Это маленький по твоему недостаток?
#33 by 1C_novichok
Сорри, лчно мне подчиненные доки даже очень понравились, но просят именно универсальные функции - как написано в
#34 by Ёпрст2
А чего там думать то ? в ПриОткрытии из подч. дока пишешь в ТЗ на форме, в ПриЗаписи/закрытии -обратно ... сколько подчиненных доков - столько новых "табличных частей" будет ....
#35 by Ёпрст2
+34 Тем более, что есть ссылка на "Табличную часть" - т.е реквизит типа "Документ", сколько реквизитов - столько "Табличных частей" и будет ... В Общем, смотрите лучше пример и пояснения к нему, там всё есть ...
#36 by Аслан
Я сказал это как вариант, а не полное решение данной проблемы. У меня используется пару справочников и числовые значения + угроза бухам оторвать руки, если удалять без спроса. Для удаления плюс обработка с анализом данной строковой переменной.
#37 by ws_mason
У меня для 2 табличных частей так: Использую подчиненный документ. Он хранит одну табличную часть. Документ-родитель хранит вторую табличную часть, на подчиненный документ имеется ссылка через реквизит типа "Документ". В табличной части документа-родителя реквизиты обеих табличных частей. При открытии документа-родителя создаю две таблицы значений и скидываю в них информацию из табличных частей документов. В форме скрываю одни и показываю другие реквизиты в табличной части, по необходимости. При закрытии, записи, проведении документа  скидываю информацию из таблиц значений в табличные части документов. Ссылочная целостность соблюдена. Табличная часть полностью функционирует.
#38 by ws_mason
В моем варианте на экране всегда одна табличная часть, но с нужными реквизитами. Так это выглядить. Переключение по закладкам.
#39 by 1C_novichok
Сорри ещё много раз, но я еще плохо ориентируюсь в языке 1С. Я рассмотрел с отладчиком пример и тперь хочу чтобы из дока было какое-то преключение между табличными частями. На форме сделал 2 кнопки (для 2-таблиц). Канеш может это тупо, но нужно сделать... Вот а в модуле формы родительского дока не могу адекватно написать процедуры переключения между таблицами... То есть понимаю, что при нажатии на кнопку на форме (или допустим при выборе закладки) старая таблица должна сохраниться и стереться, а потом на ее месте должна быть новая... Прошу не смеяться очень, но подскажите плиз как это сделать лучше. Модуль формы род дока : Прошу помочь... Заранее Спасибо! :-) Не ну тока разбираюсь, поэтому вот даже в простых вопросах пока проблемы..
#40 by 1C_novichok
Вот что у меня получилось, но табличная часть на форме родительского дока не очищается. Что-то не так. Ну подскажте плиз ! Если этого не сделаю - завтра с работы попросят ... Правда. Куче людей-программеров по телефону звонил, но толком никто ничего не может сказать. Плиз. Процедура ПриВыбореТаблицы1   ХранилищеМатериалов1 - это ссылка на второй подчиненный док с другой таблицей. По отдельности при ручном изменении загружается нужная таблица, но , блин, не получается их переключать... Заранее спасибо.
#41 by Ёпрст2
Куче людей-программеров .... может куче г .. ? Таб = СоздатьОбъект .... супер вообще ... Может, всё же сразу бум в ТЗ на форме выгружать ТЧ подчиненного дока ? ...
#42 by 1C_novichok
Ну напиши плиз! Разве жалко? То что я не знаю 1С не значит что я там гад по жизни... Хочу научиться, но блин или куча денег за занятия или ваще разбирай все сам. В других областях я может гением себя чувствую, а здесь блин лохом. Ну так что теперь ? Хочу научиться, есть реальные задачи, есть форум для таких как я , но некому три строчки подсказать. Типа такому тупому в падлу подсказки такие простые делать... Не знаю.
#43 by BABUIN
:) А задание это давал я... :)
#44 by 1C_novichok
:-) я не врал ...
#45 by Torquader
По поводу отслеживания ссылочной целостности могу заметить следущее: 1) Если в базе ничего не удаляется, то бояться за ссылочную целостность не следует. Если же реализовано непосредственное удаление объектов, то тем более, так как она может быть нарушена. 2) При использовании подчинённых документов тоже может оказаться, что один из них был удалён пользователем (если не успели запретить это делать). 3) Если хочется реально иметь ссылочную целостность, то создаём табличную часть документа со всеми реквизитами, которые предполагается иметь в наших частях, а также один служебный реквизит для описания типа строки. Удачи.
Тэги: Как страшно жить
Ответить:
Комментарии доступны только авторизированным пользователям