|
Помогите выпрямить корявый код сохранения отчета в документ | ☑ | ||
---|---|---|---|---|
0
demous
11.05.12
✎
10:18
|
Упп 8.2
суть в том, что есть отчет составленный на СКД он должен сохраняться с актуальными на данный момент времени данными в список документа, и из этого списка открываться с актуальными на момент сохранения данными вот такая корявизна получилась, в списке документ создается, а из списка не открывается( подскажите что тут исправить, и какую процедуру в список документа написать правильную что бы отчет от туда открывался?((( заранее всем огромное спасибо Процедура Сохранить () // ХранилищеДанных = Новый ХранилищеЗначения(СписокСохранения); //мСохраненныйДок.ДанныеОтчета = ХранилищеДанных; //мСохраненныйДок.Записать() ; //Модифицированность = Ложь; КонецПроцедуры Процедура Записать () мСохраненныйДок = Документы.Д_ПланируемыеПлатежи.СоздатьДокумент(); мСохраненныйДок.Дата = ТекущаяДата(); // ХранилищеДанных = Новый ХранилищеЗначения(СписокСохранения); //мСохраненныйДок.ДанныеОтчета = ХранилищеДанных; //Модифицированность = Ложь; СписокСохранения = Новый Структура(); СписокСохранения.Вставить("ТабДок", ТабДок); Хранилище = Новый ХранилищеЗначения(СписокСохранения); мСохраненныйДок.ТабДок = Хранилище; мСохраненныйДок.Записать() ; КонецПроцедуры Процедура ПередОткрытием () мСохраненныйДок = ВладелецФормы.ДокументОбъект; мДатаНачалаПериодаОтчета = мСохраненныйДок.ДатаНачала; мДатаКонцаПериодаОтчета = мСохраненныйДок.ДатаОкончания; КонецПроцедуры Процедура ПриОткрытии () Организация = мСохраненныйДок.Организация; // СписокСохранения = мСохраненныйДок.ДанныеОтчета.Получить(); КонецПроцедуры Процедура ВосстановитьСохраненныеДанные () //восстанавливаем версию формы Если СписокСохранения.Свойство("ВерсияФормы", ВерсияФормы) Тогда Если ВерсияФормы <> мВерсияФормы Тогда мВерсияФормы = ВерсияФормы; КонецЕсли; КонецЕсли; // восстановим сохраненные данные редактируемых ячеек СписокСохранения.Свойство( "ПоказателиОтчета", ПоказателиОтчета ); Для Каждого ПоказателиСтраницы Из ПоказателиОтчета Цикл ИмяТекТабличноеПоле = ПоказателиСтраницы.Ключ; ТекТабличноеПоле = ЭлементыФормы[ИмяТекТабличноеПоле] ; ПоказателиТаблПоле = ПоказателиСтраницы.Значение; Для Каждого Показатель Из ПоказателиТаблПоле Цикл ИмяПоказателя = Показатель.Ключ; ЗначениеПоказателя = Показатель.Значение; // установим значение в таблице ТекТабличноеПоле.Области[ИмяПоказателя].Значение =ЗначениеПоказателя; КонецЦикла; КонецЦикла; КонецПроцедуры |
|||
1
Cube
11.05.12
✎
10:24
|
Чо?))
|
|||
2
demous
11.05.12
✎
10:30
|
говорю же, корявизну))) завязываю я с 1С ) перехожу постепенно в веб)
помогите с этим доразобраться) |
|||
3
demous
11.05.12
✎
10:42
|
апну)
|
|||
4
aleks-id
11.05.12
✎
10:43
|
100 баксов
|
|||
5
demous
11.05.12
✎
10:51
|
а как помощь подрабатывающему студенту?)
|
|||
6
proger2011
11.05.12
✎
10:54
|
(5) А ты сайты тоже бесплатно лабаешь?
|
|||
7
Necessitudo
11.05.12
✎
10:55
|
(0) Что за бред? Отчет выводится в ТабличныйДокумент. Запихивай его в хранилище - и профит.
|
|||
8
demous
11.05.12
✎
10:58
|
(6) так как начинаю, то есть и бесплатные проекты, например нотариальной конторе районной)
(7) ну вот не получается у меня все это сделать( объясните пожалуйста как.... |
|||
9
demous
11.05.12
✎
11:09
|
в шапке та корявость которая у меня вышла(
|
|||
10
demous
11.05.12
✎
11:25
|
аппп
|
|||
11
demous
11.05.12
✎
11:47
|
не???????????
|
|||
12
Cube
11.05.12
✎
11:51
|
(11) Бросай 1С и беги без оглядки. Придет к ним специалист и сделает все хорошо, а благодаря тебе, ещё и дорого))
|
|||
13
demous
11.05.12
✎
11:54
|
(12)не варик, диплом еще не дописал)))
вот диплом допишу и тогда побегу) а эт уже чуть-чуть осталось) помогите плз сделать эту задачу) |
|||
14
Cube
11.05.12
✎
11:58
|
(13) Дык задачу ты толком не описал, а в (0) какая-то белиберда написана... :)
Я даже не до конца понял, при чем здесь (в отчете) какой-то документ??? |
|||
15
hhhh
11.05.12
✎
11:58
|
(13) больничный возьми.
|
|||
16
Cube
11.05.12
✎
11:59
|
+(15) для этого, прострели себе коленку))
|
|||
17
demous
11.05.12
✎
12:06
|
НУ вот есть отчет, после его формирования хотят сохранят его в базе, а не во внешнем файле, и что бы насохраненные отчеты выводились общим списком как документы выводятся в списке по датам
и что бы можно было зайти в этот список, открыть отчет, и без нажатия на кнопку сформировать, отчет сразу открывался с актуальными на момент сохранения данными |
|||
18
demous
11.05.12
✎
12:06
|
вот как хотят все это видеть
|
|||
19
demous
11.05.12
✎
12:07
|
вот процедура для сохранения
Процедура Сохранить () мСохраненныйДок = Документы.Д_ПланируемыеПлатежи.СоздатьДокумент(); мСохраненныйДок.Дата = ТекущаяДата(); ХранилищеДанных = Новый ХранилищеЗначения(СписокСохранения); мСохраненныйДок.ДанныеОтчета = ХранилищеДанных; мСохраненныйДок.Записать() ; Модифицированность = Ложь; КонецПроцедуры которая сейчас накарябана) |
|||
20
Cube
11.05.12
✎
12:08
|
(19) Так ты сохраняй только ТабличныйДокумент из отчета и всё. При открытии, показывай его.
|
|||
21
Cube
11.05.12
✎
12:09
|
+(20) В СКД ТабличныйДокумент на форме отчета называется "Результат".
|
|||
22
demous
11.05.12
✎
12:09
|
(20) а как это сделать?)))
|
|||
23
Cube
11.05.12
✎
12:11
|
(22) Что "это"?
|
|||
24
demous
11.05.12
✎
12:12
|
(20) вот это)))
|
|||
25
demous
11.05.12
✎
12:47
|
Люди добрые
|
|||
26
Cube
11.05.12
✎
12:47
|
(25) Чо?)
|
|||
27
demous
11.05.12
✎
12:48
|
(26) допомогите)
|
|||
28
Cube
11.05.12
✎
12:52
|
Процедура Сохранить ()
мСохраненныйДок = Документы.Д_ПланируемыеПлатежи.СоздатьДокумент(); мСохраненныйДок.Дата = ТекущаяДата(); мСохраненныйДок.ДанныеОтчета = Новый ХранилищеЗначения(Результат, Новый СжатиеДанных(9)); мСохраненныйДок.Записать() ; Модифицированность = Ложь; КонецПроцедуры |
|||
29
Cube
11.05.12
✎
12:55
|
Процедура ПоказатьСохраненныйОтчет()
СохраненныйОтчет = Документы.Д_ПланируемыеПлатежи.ПустаяСсылка(); Если ВвестиЗначение(СохраненныйОтчет, "Выберите сохраненный отчет") Тогда Результат = СохраненныйОтчет.ДанныеОтчета.Получить(); КонецЕсли; Модифицированность = Ложь; КонецПроцедуры |
|||
30
demous
11.05.12
✎
12:58
|
(28)(29) Спасибо большое!
С Процедурой Показать отчет, ее в основную форму документа? |
|||
31
Cube
11.05.12
✎
13:00
|
(30) Обе процедуры в форму отчета.
|
|||
32
demous
11.05.12
✎
13:03
|
(31) в документе создаю только форму Списка и оставляю ее пустой полностью ?
|
|||
33
Cube
11.05.12
✎
13:07
|
(32) Можешь вообще формы не создавать.
|
|||
34
Cube
11.05.12
✎
13:08
|
(32) Но организация у тебя фиговая... Лучше справочник для твоей задачи использовать.
|
|||
35
demous
11.05.12
✎
13:10
|
Переменная не определена (Результат)
|
|||
36
demous
11.05.12
✎
13:11
|
(34) я честно даже не знаю что тут лучше использовать... думаю это видно, данная задача поставила меня в тупик(
|
|||
37
Cube
11.05.12
✎
13:20
|
(35) Отчет на СКД? Форма есть? На форме есть ПолеТабличногоДокумента? И что, называется не "Результат"?
|
|||
38
demous
11.05.12
✎
13:24
|
Вот скрин, все есть
http://rghost.ru/38021800 |
|||
39
Cube
11.05.12
✎
13:27
|
(38) Всё есть, тока называется ПолеТабличногоДокумента не "Результат", а "ТабДок"... В (28) и (29) замени слово "Результат" на "ТабДок" и будет тебе счастье :)
|
|||
40
demous
11.05.12
✎
13:29
|
(39) сейчас попробую)
|
|||
41
demous
11.05.12
✎
13:37
|
смотри как открылся отчет....
http://rghost.ru/38021966 |
|||
42
demous
11.05.12
✎
13:38
|
щас удалю все реквизиты лишние
|
|||
43
Cube
11.05.12
✎
13:41
|
(41) Бредятина... Ты как его открыл? Через (29) открывай!
|
|||
44
demous
11.05.12
✎
13:47
|
я документ ПланируемыеПлатежи открыл, там выдало в списке сохраненный отчет, открыл его и он форму эту выдал
|
|||
45
Cube
11.05.12
✎
13:51
|
(44) Забудь про это, зачем ты вообще в список полез? Забудь про него и в меню его не выноси - не нужен он там.
Просто в форме ОТЧЕТА сделай две кнопки "Сохранить отчет" с процедурой из (28) и "Показать сохраненный отчет" с процедурой из (29). |
|||
46
demous
11.05.12
✎
14:03
|
(45)сделал отдельные кнопки
(29) открывает список в маленьком окошке, но от туда не открывается ни чего( |
|||
47
Cube
11.05.12
✎
14:05
|
(46) Открывается список выбора. Выбери там че-нить (щелкни два раза мышкой на каком-нибудь пункте). Если, конечно, ты этот документ сохранял кодом из (28).
|
|||
48
demous
11.05.12
✎
14:05
|
реквизит в документе ДанныеОтчета, у него тип ХранилищеЗначения?
|
|||
49
Cube
11.05.12
✎
14:05
|
У меня рабочий день заканчивается, давай реще! :)
|
|||
50
Cube
11.05.12
✎
14:06
|
(48) Да, должен быть хранилищем значения.
|
|||
51
demous
11.05.12
✎
14:07
|
так и делаю... он не открывает его(
|
|||
52
demous
11.05.12
✎
14:08
|
точнее это окошко пропадает и все
|
|||
53
Cube
11.05.12
✎
14:09
|
(51) Пометь все свои прошлые документы этого вида на удаление.
Открой отчет. Сформируй отчет, чтобы появились данные. Сохрани отчет. Закрой отчет. Открой отчет и нажми "Показать сохраненный отчет". |
|||
54
Cube
11.05.12
✎
14:10
|
+(53) В появившемся окне выбери документ не помеченный на удаление.
|
|||
55
demous
11.05.12
✎
14:16
|
ни чего не изменилось... все пошагово сделал...
http://rghost.ru/38022547 потом выбираю его... и остается тоже самое пустое окно отчета |
|||
56
demous
11.05.12
✎
14:17
|
http://rghost.ru/38022568 вот скрин процедур на кнопки
|
|||
57
noxxx
11.05.12
✎
14:20
|
Зачем отчет сохранять? Он на то и отчет что б его формировать и смотреть.
|
|||
58
Cube
11.05.12
✎
14:21
|
(56) Попробуй так:
Процедура ПоказатьСохраненныйОтчет() СохраненныйОтчет = Документы.Д_ПланируемыеПлатежи.ПустаяСсылка(); Если ВвестиЗначение(СохраненныйОтчет, "Выберите сохраненный отчет") Тогда СохраненныйОтчет.ДанныеОтчета.Получить().Показать(); КонецЕсли; Модифицированность = Ложь; КонецПроцедуры |
|||
59
demous
11.05.12
✎
14:22
|
основная мотивация такова, что :-" Это столько лишних движений, что бы сохранить его во внешнем файле, нам надо именно в базе их хранить"... после попыток спорить :-"Знаешь в чем разница между начальством и подчиненными? Начальник сказал, значит делай"
|
|||
60
demous
11.05.12
✎
14:23
|
(58) минутку
|
|||
61
Cube
11.05.12
✎
14:23
|
Всё, меня нет.
|
|||
62
demous
11.05.12
✎
14:25
|
(60) пустая таблица разбитая на клетки открылась(
|
|||
63
Cube
11.05.12
✎
14:26
|
(62) Значит ты нифига не сохранил. Копайся в процедуре сохранения.
|
|||
64
demous
11.05.12
✎
14:28
|
(63) Спасибо большое за помощь! Буду сидеть разбираться! Точнее Огромное спасибо))))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |