|
Печать документа | ☑ | ||
---|---|---|---|---|
0
Jamiq
21.03.12
✎
11:15
|
упп 1,0 релиз 8,1,0,17
Документ проведен, предположим 2 недели назад, его надо напечатать. Вылезает оконце: Документ изменен. Для печати перепроведите документ. После проводки все печатается. Но, есть докумы, которые перепроводить низззя. Как решить сию задачу? |
|||
1
lxs
21.03.12
✎
11:16
|
косяк. при открытии формы документа, что-то меняется. смотри отладчиком.
|
|||
2
Jamiq
21.03.12
✎
11:17
|
Изменений в документе соответственно не было.
|
|||
3
Шапокляк
21.03.12
✎
11:17
|
(0) Значит, при открытии форма модифицируется.
|
|||
4
WF72
21.03.12
✎
11:17
|
не косяк, а чьи-то кривые ручки, проставившие переопределение чего-то в ПриОткрытии документа.
|
|||
5
Reset
21.03.12
✎
11:17
|
Были, см, напр. (1)
Чудесов не бывает. |
|||
6
Reset
21.03.12
✎
11:18
|
(5) к (2)
|
|||
7
КМ155
21.03.12
✎
11:18
|
(5) [Чудесов не бывает.]
учёт в УПП 1.0 супер чудо |
|||
8
Reset
21.03.12
✎
11:19
|
(7) Ну,хорошо.. бывают исключения ;d
|
|||
9
lxs
21.03.12
✎
11:20
|
(7) +1)) приходилось сталкиваться))
|
|||
10
catena
21.03.12
✎
11:23
|
Гы, Поступления? Или Реализация.
Смотри при активизации строки ТЧ, там реквизиты аналитики присваивают тип. Плохо присваивают. |
|||
11
lxs
21.03.12
✎
11:24
|
(10) вопрос даже не в том. плохо или хорошо, вопрос в том. нахрена это делать в проведенном документе. и там такое на каждом шагу.
|
|||
12
Jamiq
21.03.12
✎
11:28
|
Бух пока жаловался на списание и принятие ОС.
|
|||
13
catena
21.03.12
✎
11:28
|
(11)Это ко мне вопрос? Я бы с удовольствием занялась выяснением этого вопроса, но у меня самолет через 4 часа :(
|
|||
14
Jamiq
21.03.12
✎
11:29
|
Это утверждение =)
|
|||
15
lxs
21.03.12
✎
11:29
|
(13) это не вопрос) это констатация.
|
|||
16
Jamiq
21.03.12
✎
11:30
|
или так =Р
|
|||
17
Jamiq
21.03.12
✎
11:59
|
ох ты ж ёжик...
вот такая фигня там лежит: Процедура ПриОткрытии() Если ЭтоНовый() Тогда // проверить объект на то, что он еще не внесен в ИБ // Заполнить реквизиты значениями по умолчанию. мРаботаСДиалогами.ЗаполнитьШапкуДокумента(ЭтотОбъект, глТекущийПользователь); мРаботаСДиалогами.УстановитьНомерДокумента(ЭтотОбъект); ЗаполнитьДаннымиПоУмолчанию(ЭтотОбъект); КонецЕсли; // Проверка ведения однофирменности ЭлементыФормы.Организация.ТолькоПросмотр = НЕ УчетПоВсемОрганизациям; // Заполнить подменю выбора печатных форм. СоответствиеМакетов = ЭтотОбъект.ПолучитьСписокПечатныхФорм(); мРаботаСДиалогами.УстановитьПодменюВыбораПечатнойФормы(ЭлементыФормы.ОсновныеДействияФормы.Кнопки.ПодменюПечати, СоответствиеМакетов, Новый Действие("КоманднаяПанельФормыДействиеВыбратьПечатнуюФормы")); // Установить печатную форму по умолчанию. мРаботаСДиалогами.УстановитьКнопкуПечати(ЭтотОбъект.Метаданные().Имя, ЭтаФорма, СоответствиеМакетов); мРаботаСДиалогами.УстановитьЗаголовокФормыДокумента("", ЭтотОбъект, ЭтаФорма); ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета(); //++++++++++Н Иванченко А. Ю. СиДата // мРаботаСДиалогами.ВидимостьРеквизитовПоТипуУчета(ЭтотОбъект, ЭтаФорма, мСтрокаРеквизитыНалУчета); ОтражатьВБухгалтерскомУчете=Истина; //++++++++++К // Установим видимость и доступность реквизитов УстановитьВидимость(); // Установить активный реквизит. мРаботаСДиалогами.АктивизироватьРеквизитВФорме(ЭтотОбъект, ЭтаФорма); мТекущаяДатаДокумента = Дата; КонецПроцедуры // ПриОткрытии() |
|||
18
catena
21.03.12
✎
12:04
|
ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета();
Вот это подозрительно. |
|||
19
catena
21.03.12
✎
12:05
|
мРаботаСДиалогами.АктивизироватьРеквизитВФорме(ЭтотОбъект, ЭтаФорма);
И вот это я бы глянула. |
|||
20
Jamiq
21.03.12
✎
12:14
|
Ставлю точку останова:
ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета(); --> пусто мРаботаСДиалогами.АктивизироватьРеквизитВФорме(ЭтотОбъект, ЭтаФорма); --> ЭтотОбъект - Списание ОС 00001 от такого то числа. ЭтаФорма - Форма. Ставлю напротив каммент, ни чего не меняется. |
|||
21
catena
21.03.12
✎
12:17
|
(20)При чем тут пусто? Ты процедуру посмотри, что там творяется?
|
|||
22
catena
21.03.12
✎
12:17
|
А после активироватьРеквизит - посмотри что активирует и нет ли в модуле процедур обработки активации этого реквизита.
|
|||
23
lxs
21.03.12
✎
12:18
|
(20)Перейди в процедуру-то
|
|||
24
lxs
21.03.12
✎
12:18
|
(22) ух, ты такая скоростная
|
|||
25
catena
21.03.12
✎
12:18
|
Ну, еще как вариант: по-очереди закоменти эти две строки, и посмотри - будет модифицированность или нет.
|
|||
26
catena
21.03.12
✎
12:19
|
(24)Я нервничаю, мне себя надо чем-то отвлечь :)
|
|||
27
Jamiq
21.03.12
✎
12:21
|
а паника паника !!!
как в процедуру перейти? |
|||
28
Jamiq
21.03.12
✎
12:22
|
я еще, не на столько разбираюсь =(
|
|||
29
catena
21.03.12
✎
12:23
|
(27)ф11 в режиме отладки, ф12 в режиме конфигурирования.
|
|||
30
catena
21.03.12
✎
12:23
|
Там в меню есть "Отладка" - там много прикольных фишечек :)
|
|||
31
Jamiq
21.03.12
✎
12:29
|
Процедура ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета() Экспорт
мСтрокаРеквизитыБухУчета = "СчетСписанияБУ, СубконтоБУ, ОС.СтоимостьБУ, ОС.АмортизацияБУ, ОС.АмортизацияЗаМесяцБУ, ОС.ОстСтоимостьБУ"; //, ОС.СписаноНаЗатратыБУ мСтрокаРеквизитыНалУчета = "СчетСписанияНУ, СубконтоНУ, ОС.СтоимостьНУ, ОС.АмортизацияНУ, ОС.АмортизацияЗаМесяцНУ, ОС.ОстСтоимостьНУ"; КонецПроцедуры // ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета() |
|||
32
Jamiq
21.03.12
✎
12:34
|
Прожал ф11 дальше, ни куда больше не зашел. Вернулся обратно к ЗаполнитьСписокРеквизитовЗависимыхОтТиповУчета();
Процедура лежит в модуле объекта. |
|||
33
lxs
21.03.12
✎
12:35
|
Глянь что в ПередОткрытием()
|
|||
34
Jamiq
21.03.12
✎
12:36
|
Ни чего нет.
Есть ПриОткрытии, ОбработкаВыбора и ПослеЗаписи |
|||
35
catena
21.03.12
✎
12:36
|
(32)Нормально. Активируется что?
|
|||
36
catena
21.03.12
✎
12:37
|
мРаботаСДиалогами.АктивизироватьРеквизитВФорме(ЭтотОбъект, ЭтаФорма);
Вот в этой процедуре что происходит? |
|||
37
Jamiq
21.03.12
✎
12:38
|
Функция АктивизироватьРеквизитВФорме(ДокументОбъект, ФормаДокумента ,СтруктураРеквизитов = неопределено,ТабличнаяЧасть = неопределено,СтраницыСТабЧастями = неопределено) Экспорт
Если Не ДокументОбъект.Проведен Тогда Если СтруктураРеквизитов = Неопределено Тогда // Структура - порядок активизации реквизитов. // Активизируется первый не заполненный. СтруктураРеквизитов = Новый Структура(); СтруктураРеквизитов.Вставить("Дата"); СтруктураРеквизитов.Вставить("Организация"); СтруктураРеквизитов.Вставить("СчетОрганизации"); СтруктураРеквизитов.Вставить("Склад"); СтруктураРеквизитов.Вставить("БанковскийСчет"); СтруктураРеквизитов.Вставить("ФизЛицо"); СтруктураРеквизитов.Вставить("Контрагент"); СтруктураРеквизитов.Вставить("ДоговорКонтрагента"); СтруктураРеквизитов.Вставить("Касса"); СтруктураРеквизитов.Вставить("Получатель"); СтруктураРеквизитов.Вставить("Плательщик"); СтруктураРеквизитов.Вставить("ПодразделениеОрганизации"); КонецЕсли; Для каждого Элемент Из СтруктураРеквизитов Цикл // Определим, есть ли ЭУ с таким именем. ЭлементУправления = ФормаДокумента.ЭлементыФормы.Найти(Элемент.Ключ); Если ЭлементУправления <> Неопределено Тогда // есть такой Если ЭлементУправления.Видимость И ЭлементУправления.Доступность И НЕ ЗначениеЗаполнено(ЭлементУправления.Значение) Тогда // Нашли не заполненный ЭУ. Делаем его текущим и прекращаем цикл. ФормаДокумента.ТекущийЭлемент = ЭлементУправления; Возврат(Истина); Прервать; КонецЕсли; ТекущийРеквезит = ЭлементУправления; КонецЕсли; КонецЦикла; КонецЕсли; //если в документе есть ТЧ то необходимой фокус передать ей Если ТабличнаяЧасть <> Неопределено Тогда ЭлементУправления = ФормаДокумента.ЭлементыФормы.Найти(ТабличнаяЧасть.Имя); Если ТипЗнч(ЭлементУправления) = Тип("ТабличноеПоле") Тогда ФормаДокумента.ТекущийЭлемент = ЭлементУправления; Возврат(Истина); ИначеЕсли СтраницыСТабЧастями <> неопределено Тогда ЭлементУправления = ФормаДокумента.ЭлементыФормы.Найти(СтраницыСТабЧастями.НайтиПоЗначению(ТабличнаяЧасть.Имя)); Если ТипЗнч(ЭлементУправления) = Тип("ТабличноеПоле") Тогда ФормаДокумента.ТекущийЭлемент = ЭлементУправления; Возврат(Истина); КонецЕсли; КонецЕсли; КонецЕсли; //Если все поля заполнены но нет ТЧ то передадим фокус панели, в результате //визуально будет казаться что фокус не установлен ни на одном ЭФ. //Хотелось бы фокус установить на кнопке "Закрыть", но пока технически не предоставляется //такой возможности. ЭлементУправления = ФормаДокумента.ЭлементыФормы.Найти("ОсновныеДействияФормы"); Если ЭлементУправления <> Неопределено Тогда ФормаДокумента.ТекущийЭлемент = ЭлементУправления; Возврат(Истина); КонецЕсли; Возврат(Ложь); КонецФункции// АктивизироватьРеквизитВФорме() |
|||
38
catena
21.03.12
✎
12:38
|
Кстати, выведи вообще в отладчик Модифицированность, прошлепай всю процедуру по ф10 и посмотри, после какой строчки переходит модифицированность в Да.
|
|||
39
Jamiq
21.03.12
✎
12:39
|
О_о
|
|||
40
catena
21.03.12
✎
12:40
|
(37)Нормально, не должно ничего слетать.
|
|||
41
catena
21.03.12
✎
12:41
|
(39)Поставь точку останова в начале процедуры. Начни отладку. В конфигураторе открой табло, там добавь строчку, введи ЭтотОбъет.Модифицированность(). Потом шлепай ф10 и смотри на значение.
|
|||
42
Jamiq
21.03.12
✎
12:44
|
написал ЭтотОбъет.Модифицированность() в Столбец "Выражение"
в "Значение" выдало {(1,1)}: Переменная не определена (ЭтотОбъет) |
|||
43
Jamiq
21.03.12
✎
12:46
|
скопировал без буквы к )
|
|||
44
catena
21.03.12
✎
12:46
|
объеКт
|
|||
45
catena
21.03.12
✎
12:46
|
:)
|
|||
46
lxs
21.03.12
✎
12:47
|
ЭЭЭ
|
|||
47
lxs
21.03.12
✎
12:48
|
посмотри процедуру приактивизациистроки!
|
|||
48
lxs
21.03.12
✎
12:48
|
была такая фигня в УПП
|
|||
49
Jamiq
21.03.12
✎
12:48
|
Везде Ложь/булево
на УстановитьВидимость(); изменилось на истина/булево |
|||
50
catena
21.03.12
✎
12:48
|
(47)Там не активируется тч - она же не передается в процедуру. Там активизироваться основные действия должны
|
|||
51
catena
21.03.12
✎
12:49
|
(49)О как! Давай процедуру.
|
|||
52
lxs
21.03.12
✎
12:49
|
(50) строка сама по себе активизируется при открытии
|
|||
53
catena
21.03.12
✎
12:49
|
(52)Там принудительная активация идет же, смотри процедуру ПриОткрытии.
|
|||
54
lxs
21.03.12
✎
12:50
|
да-да, там тоже встречались засады
|
|||
55
Jamiq
21.03.12
✎
12:50
|
приактивизациистроки нет такой
|
|||
56
lxs
21.03.12
✎
12:51
|
(53) вот именно
|
|||
57
lxs
21.03.12
✎
12:51
|
смотри коммент//если в документе есть ТЧ то необходимой фокус передать ей
|
|||
58
Jamiq
21.03.12
✎
12:51
|
Процедура УстановитьВидимость()
ЭлементыФормы.НадписьОрганизация.Видимость = ЭлементыФормы.Организация.Видимость; ЭлементыФормы.СубконтоБУ.Доступность = НЕ (мОбщегоНазначения.ЗначениеНеЗаполнено(СчетСписанияБУ) ИЛИ (СчетСписанияБУ.ВидыСубконто.Количество() = 0)); ЭлементыФормы.СубконтоНУ.Доступность = НЕ (мОбщегоНазначения.ЗначениеНеЗаполнено(СчетСписанияНУ) ИЛИ (СчетСписанияНУ.ВидыСубконто.Количество() = 0)); ЭлементыФормы.НадписьСчетСписанияНУ.Видимость = ОтражатьВНалоговомУчете; ЭлементыФормы.НадписьСубконтоНУ.Видимость = ОтражатьВНалоговомУчете; мНалоговыйУчетУСН.УстановитьВидимостьРеквизитовУСН(ЭлементыФормы, Организация, Дата); КонецПроцедуры //УстановитьВидимость() |
|||
59
catena
21.03.12
✎
12:51
|
(55)Давай смотри уже УстановитьВидимость(), а то я улечу сейчас уже.
|
|||
60
Jamiq
21.03.12
✎
12:51
|
НЕТ, не отпущу!!!!!!
|
|||
61
catena
21.03.12
✎
12:52
|
(57)И чо? ЧТ в параметрах не передается! Код несколько приоритетнее каментов.
|
|||
62
lxs
21.03.12
✎
12:52
|
короче, что за док? у меня есть 1.0 релиз. сам посмотрю
|
|||
63
catena
21.03.12
✎
12:52
|
(60)Меня там муж ждет :)
|
|||
64
lxs
21.03.12
✎
12:52
|
(61) спокойно! тебе перед полетом стрессы противопоказаны))
|
|||
65
catena
21.03.12
✎
12:53
|
Ну, кроме
мНалоговыйУчетУСН.УстановитьВидимостьРеквизитовУСН(ЭлементыФормы, Организация, Дата); ничего подозрительного не вижу. Пройдись так же отладчиком, посмотри, когда меняется модифицированность. |
|||
66
Jamiq
21.03.12
✎
12:53
|
Списание ОС и Принятие ОС
|
|||
67
catena
21.03.12
✎
12:53
|
(64)Для меня полет сам по себе стресс, у меня сейчас истерика начнется :)
|
|||
68
lxs
21.03.12
✎
12:53
|
ща, смотрю ужО
|
|||
69
lxs
21.03.12
✎
12:54
|
(67) а что ж ты? поехала бы на поезде))
|
|||
70
Jamiq
21.03.12
✎
12:54
|
какой муж?!! =))
у меня паника была, когда я с питера в ростов летел, самолет на 5 часов задержали, из-за поломки.... |
|||
71
catena
21.03.12
✎
12:54
|
(69)Дак это... 5 дней выходных, я даже туда-обратно на поезде не успею :)
|
|||
72
catena
21.03.12
✎
12:56
|
(70)ААА, не надо меня пугать, я без посторонней помощи справлюсь!
|
|||
73
Jamiq
21.03.12
✎
12:56
|
Прожал ф10 по Процедура УстановитьВидимость()
везде истина/булево |
|||
74
Reset
21.03.12
✎
12:57
|
(17) ОтражатьВБухгалтерскомУчете=Истина;
|
|||
75
Jamiq
21.03.12
✎
12:57
|
Без паники! все будет отлично!
|
|||
76
catena
21.03.12
✎
12:57
|
Когда я на АН-24 в Кустанай летела 5 часов, я даже в туалет боялась выйти - двруг этот запорожец с моторчиком перевернется?
|
|||
77
J_B
21.03.12
✎
12:57
|
ОтражатьВБухгалтерскомУчете=Истина;
не оно косячит? |
|||
78
Jamiq
21.03.12
✎
12:58
|
ставил остонов - Истина
|
|||
79
catena
21.03.12
✎
12:59
|
(77)А, похоже оно, если оно не закомментировано.
|
|||
80
catena
21.03.12
✎
12:59
|
(78)перед УстановитьВидимость() строка ОтражатьВБухгалтерскомУчете=Истина; закоментирована или нет?
|
|||
81
Reset
21.03.12
✎
12:59
|
Какой останов? Идет прямое присваевание реквизиту
|
|||
82
Jamiq
21.03.12
✎
13:00
|
нет без комментов
|
|||
83
Reset
21.03.12
✎
13:01
|
Видно же его невооруженным взглядом, полсотни постов ниочем
|
|||
84
Jamiq
21.03.12
✎
13:02
|
ДАААААА
|
|||
85
catena
21.03.12
✎
13:02
|
(83)Там перед ней закоментирована функция криво, часть параметров вне коментов, я и проглядела :)
Так что, (82) спасибо за разговор. |
|||
86
Jamiq
21.03.12
✎
13:02
|
я ВАС обожаю!!!
|
|||
87
Jamiq
21.03.12
✎
13:02
|
Спасибо!
|
|||
88
Jamiq
21.03.12
✎
13:03
|
Катёна, удачно долететь!
|
|||
89
lxs
21.03.12
✎
13:04
|
У меня более свежая версия. значит, а тут да. проглядели)
|
|||
90
lxs
21.03.12
✎
13:08
|
(83) а то тут в каждой теме не так, млин.
|
|||
91
Jamiq
21.03.12
✎
13:08
|
=)
|
|||
92
catena
21.03.12
✎
13:10
|
(88)Спасибо :)
|
|||
93
Jamiq
21.03.12
✎
14:36
|
Со списанием разобрались.
Принятие к учету ОС другая проблема. Процедура ПриОткрытии() Если ЭтоНовый() Тогда // проверить объект на то, что он еще не внесен в ИБ // Заполнить реквизиты значениями по умолчанию. мРаботаСДиалогами.ЗаполнитьШапкуДокумента(ЭтотОбъект, глТекущийПользователь); мРаботаСДиалогами.УстановитьНомерДокумента(ЭтотОбъект); ЗаполнитьДаннымиПоУмолчанию(ЭтотОбъект); //+++++++++Н Иванченко А. Ю. СиДата ОтражатьВБухгалтерскомУчете=Истина; КоэффициентУскоренияБУ=1; //+++++++++К Если НЕ мНалоговыйУчетУСН.ПрименениеУСН(Организация, Дата) Тогда СпециальныйКоэффициентНУ = 1; КонецЕсли; КонецЕсли; // Проверка ведения однофирменности ЭлементыФормы.Организация.ТолькоПросмотр = НЕ УчетПоВсемОрганизациям; // Заполняем подменю, вызываемое нажатием кнопки "Операция" командной панели // формы, значениями перечисления "Вид операции" данного вида документа. // В качестве обработки выбора вида операции назначается процедура // ДействияФормыДействиеУстановитьОперацию модуля формы. мРаботаСДиалогами.УстановитьПодменюВыбораВидаОперации(ЭлементыФормы.ДействияФормы.Кнопки.ПодменюВидаОперации, ВидОперации.Метаданные().ЗначенияПеречисления, Новый Действие("ДействияФормыДействиеУстановитьОперацию")); // Заполнить подменю выбора печатных форм. СоответствиеМакетов = ЭтотОбъект.ПолучитьСписокПечатныхФорм(); мРаботаСДиалогами.УстановитьПодменюВыбораПечатнойФормы(ЭлементыФормы.ОсновныеДействияФормы.Кнопки.ПодменюПечати, СоответствиеМакетов, Новый Действие("ДействияФормыДействиеВыбратьПечатнуюФормы")); // Установить печатную форму по умолчанию. мРаботаСДиалогами.УстановитьКнопкуПечати(ЭтотОбъект.Метаданные().Имя, ЭтаФорма, СоответствиеМакетов); // Отобразить в заголовке формы вид операции. мРаботаСДиалогами.УстановитьЗаголовокФормыДокумента(Строка(ВидОперации), ЭтотОбъект, ЭтаФорма); ВалютаРегл = Константы.ВалютаРегламентированногоУчета.Получить(); ЭлементыФормы.РеглВалюта.Заголовок = ВалютаРегл; ЭлементыФормы.РеглВалюта1.Заголовок = ВалютаРегл; ЭлементыФормы.РеглВалюта2.Заголовок = ВалютаРегл; ЭлементыФормы.РеглВалюта3.Заголовок = ВалютаРегл; ПараметрВыработкиБУПриИзменении(ЭлементыФормы.ПараметрВыработкиБУ); УстановитьВидимость(); // Установить активный реквизит. мРаботаСДиалогами.АктивизироватьРеквизитВФорме(ЭтотОбъект, ЭтаФорма); мТекущаяДатаДокумента = Дата; //+++++++++++Н Иванченко А. Ю. ПриВыбореДокументаПриобретения(ДокументПриобретения); //+++++++++++К КонецПроцедуры // ПриОткрытии() Комментирую вот этот кусочек: //+++++++++++Н Иванченко А. Ю. ПриВыбореДокументаПриобретения(ДокументПриобретения); //+++++++++++К Проблема исчезает. Захожу в процедуру: Процедура ПриВыбореДокументаПриобретения(Элемент) Если ДокументПриобретения=Документы.ПоступлениеТоваровУслуг.ПустаяСсылка() Тогда ЭлементыФормы.НомерДокументаПриобретения.Доступность=Истина; ЭлементыФормы.ДатаПриобретенияОС.Доступность=Истина; Иначе ЭлементыФормы.НомерДокументаПриобретения.Доступность=Ложь; ЭлементыФормы.ДатаПриобретенияОС.Доступность=Ложь; НомерДокументаПриобретения=ДокументПриобретения.Номер; ДатаПриобретенияОС=ДокументПриобретения.Дата; КонецЕсли; КонецПроцедуры Делаю модифицированность, ставит Истина/Булево на строчке: ДатаПриобретенияОС=ДокументПриобретения.Дата; Чего дальше делать не знаю =( |
|||
94
Jamiq
21.03.12
✎
14:51
|
в процедуре ставлю комменты на против:
НомерДокументаПриобретения=ДокументПриобретения.Номер; ДатаПриобретенияОС=ДокументПриобретения.Дата; все работает. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |