Последние сообщения

#51
7.7 / Re: Отчетность в 7.7 1кв
Последний ответ от Ветер в поле - 07 апреля 2026, 12:56
Даже не представлял, что такие извращенцы еще могут быть - на ОСНО и вести бухгалтерию в 7.7...
Можно, конечно, дорабатывать декларации НДС периодически, но не пора ли перейти на 8.3?
#52
7.7 / Re: Понять в каком режиме отк...
Последний ответ от item - 07 апреля 2026, 12:30
ПослеОткрытия точно тупиковая ветка.
Послушайте Злопа, юзайте ПриОткрытии или ПослеСозданияФормы, она то и появилась гораздо позже и для обработок до прорисовки формы.
И нехер думать, будет форма выставлена в просмотр в локальном контексте или нет, надо её по-любому перезапускать, чтобы не допускать лишних блокировок...
... и лазеек в виде кнопок, которыми можно обойти запрет на редактирование.
#53
7.7 / Отчетность в 7.7 1кв
Последний ответ от SnakePlisskin - 07 апреля 2026, 11:21
Доброго дня! Господа, честно говоря прошляпил момент, понял что фирма 1С кинет с отчетностью за 1кв, спрашивается нафига тогда релизы выпускать, давеча как вчера на комплексную обновление вышло...Собственно вопрос, есть один клиент который учет ведет в комплексной, потом просто выгружал отчеты в СБИС и так сказать жил, все это время, собственно вопрос, кто-то дорабатывал декларацию по НДС что бы ее можно было выгрузить просто в СБИС ?
#54
7.7 / Re: Понять в каком режиме отк...
Последний ответ от Злоп - 07 апреля 2026, 10:00
В ПриОткрытии надо очень осторожно со всякими манипуляциями формы до завешения полной инициализации формы. Я еще когда для ТСД писал пришел к тому что когда в ПриОткрытии надо например запустить другую форму для ввода каких-то промежуточных данных и вернуться обратно, то это в итоге делалось через ОО.
#55
7.7 / Re: Понять в каком режиме отк...
Последний ответ от Злоп - 07 апреля 2026, 09:15
Если в модуле формы документа в самом низу написать

Если Форма.ТолькоПросмотр() = 0 Тогда
    // тут еще можно флаг взвести чтобы в ПриОткрытии() сделать СтатусВозврата(ФлагКоторыйНоль)
    ОткрытьФорму(ТекущийДокумент(),,1);
КонецЕсли;

то у меня спокойно открываются две формы документа - одна на редактирование и одна в режиме просмотра
#56
7.7 / Re: Понять в каком режиме отк...
Последний ответ от Харлампий Дымба - 06 апреля 2026, 23:57
Что-то я разочаровался в своем решении. Идея-то была не вынести контроль ПриОткртыии (типа даты запрета редактирования) в единое место, а сделать переоткрытия для любых форм, которым в локальной ПриОткрытии был установлен Форма.ТолькоПросмотр(1). То есть контроль идет уже ПОСЛЕ локальной ПриОткрытии. А тут есть только формексовская Глобальная_ПослеОткрытия, которая вызывается когда форма уже открыта. И тут затык с закрытием формы: пока форма открыта - её не переоткроешь, как только закрыл - выполнение Глобальная_ПослеОткрытия завершилось, форму неоткуда открывать. И начинатся огород - через Сервис.ВнешнееСобытие делать, через ПослеЗакрытия? ну и как-то пока не понравилось, красоты не получилось.

Бонус: код
Процедура ПриОткрытии()
	ОткрытьФорму(ТекущийДокумент(),,1);
КонецПроцедуры // ПриОткрытии()
валит 1С напрочь при открытии существующего документа.


#57
7.7 / Re: Как открыть из меню отчет ...
Последний ответ от Злоп - 06 апреля 2026, 22:08
С отчетами, открытыми с # есть проблемы если из такого отчета вызывается UCHOICE или ПодборОбъектов
#58
7.7 / Re: Как открыть из меню отчет ...
Последний ответ от Злоп - 06 апреля 2026, 22:06
Что значит "из глобального меню"..?
1. сделать пункт меню с пунктом Задача.Выполнить и вписать нужную формулу (но это очевидно же)
2. в ПриОткрытии() сделать РасположениеФайла() и переоткрыть самого себя с #
3. Через глоб.предопределенную формексовскую ПриЗагрузкеВнешнегоОтчета() - если в процедуре установить статус возврата в ноль, то внешний отчет не будет загружен, далее переоткрыть самого себя с #
#59
7.7 / Как открыть из меню отчет с #
Последний ответ от alyuev - 06 апреля 2026, 19:17
Кто-то знает - можно ли открыть из глобального меню отчет так, чтобы это выглядело как

ОткрытьФорму("Отчет#" ...

Т.е. чтобы открылась новая форма отчета? 

У нас так по комбинации клавиш сделано. Для любой формы можно открыть копию.
А вот при открытии из меню сейчас отчет открывается заново поверх открытой формы.
#60
7.7 / Re: Понять в каком режиме отк...
Последний ответ от alyuev - 06 апреля 2026, 19:13
Мы через класс ФабрикуСобытий так сделали.

Функция СобытиеГМ_ПриОткрытии(Конт, ФлагЧтенияНастройки) Экспорт
......
    Рез=ПроверкаРазрешенияРедактирования(КонтФормы);
    Если Рез=0 Тогда
......

    ИначеЕсли Рез=-1 Тогда
        ДокИнв=КонтФормы.ТекущийДокумент(); //Переменная для внешнего события
     Сервис.ВнешнееСобытие("Фабрика","ПриОткрытии","ОткрытьТолькоНаПросмотр"); //Открываем повторно форму в режиме ТолькоПросмотр только через ВнешнееСобытие, т.к. иначе глюки с открытием
        Возврат 0;
  ИначеЕсли Рез=-10 Тогда
     СообщитьВОтладке(""+ТекущееВремя()+" КОНЕЦ "+л_ИмяСобытия+" НЕ разрешаем открывать форму");
     Возврат 0;
   КонецЕсли;


Функция Событие_ОбработкаВнешнегоСобытия(Источник,Событие,Данные) Экспорт //+Al 2016-04-13 16:53:09 глобальная (СобытиеГМ_) перехватывается при вызове Сервис.ВнешнееСобытие из глМодуля
    //!!! При открытии форм из ПриНачалеРаботыСистемы теряется контекст откуда вызывалось ВнешнееСобытие. КонтФормы будет = последней открытой форме. Это, по всей видимости, глюк перехватчика из ВК 1с++
 Перем л_ИмяСобытия,ЕстьМетод,ИмяМетода;
 л_ИмяСобытия = ""+ID+" ФабрикаСобытий Событие_ОбработкаВнешнегоСобытия() ";
 СообщитьВОтладке(""+ТекущееВремя()+" НАЧАЛО "+л_ИмяСобытия+" Источник="+Источник+" Событие="+Событие+" Данные="+Данные);
 СообщитьВФайл("НАЧАЛО "+л_ИмяСобытия+" Источник="+Источник+" Событие="+Событие+" Данные="+Данные,"ФабрикаСобытий"); //+Al 2024-06-13 11:54
 Если Данные="ОткрытьТолькоНаПросмотр" Тогда
    ОткрытьФорму(ДокИнв,,1);
    ДокИнв=0;Рез=0;
 ИначеЕсли Данные="ОткрытьНаРедактирование" Тогда
    ОткрытьФорму(ДокИнв,,0);
     ДокИнв=0;Рез=0;
......