|
Передача значения из одной формы в другую | ☑ | ||
---|---|---|---|---|
0
_stay true_
09.08.12
✎
16:22
|
В одной обработке 2 формы. Код основной формы:
Процедура КнопкаВыполнитьНажатие(Кнопка) Рез=ПолучитьРазностьДат(ОбработкаОбъект.ЗаказНаряд); Сообщить(Рез); КонецПроцедуры Хочу чтобы при нажатии "выполнить" вместо "сообщить", "Рез" выводилась в виде надписи в произвольную форму при её открытии(уже создал саму форму) Пробовал метод Предупреждение, но в него не запихнешь функцию. Помогите кто может |
|||
1
Asmody
09.08.12
✎
16:23
|
попробуй метод Оповестить
|
|||
2
_stay true_
09.08.12
✎
16:25
|
Это в основной форме, или в которую собрался выводить?
|
|||
3
Rovan
гуру
09.08.12
✎
16:27
|
(0) произвольная_форма.Открыть();
произвольная_форма.Надпись.Заголовок = "Тут ничего не написано !"; |
|||
4
Asmody
09.08.12
✎
16:27
|
в основной. в СП всё доходчиво написано
|
|||
5
KindLion
09.08.12
✎
16:34
|
На новой форме создаешь реквизит Рекв
Получаешь новую форму, пишешь: НоваяФорма.Рекв = Результат; НоваяФорма.Открыть(); |
|||
6
_stay true_
09.08.12
✎
16:51
|
Наверное, я немного неправильно объяснил
Я пробовал обойтись без создания формы с помощью метода Предупреждение - но в него к сожалению не запихнешь функцию. Нужно чтобы при нажатии на кнопку выполнить в обработке появлялось окно, в котором бы содержался результат функции(аналог метода предупреждение, только вместо текста вставить функцию). |
|||
7
Asmody
09.08.12
✎
17:14
|
(6) в 1С нельзя функции в другие функции передавать, это вам не хаскель, только результат функции
|
|||
8
KindLion
09.08.12
✎
17:31
|
(0), (6)
А что мешает сделать так: Рез=ПолучитьРазностьДат(ОбработкаОбъект.ЗаказНаряд); Предупреждение(Рез); ? |
|||
9
_stay true_
10.08.12
✎
09:20
|
Пробовал. Не получается. Вылезает окно, но пустое.
|
|||
10
_stay true_
10.08.12
✎
10:04
|
Ещё попробовал метод ОткрытьЗначение
ОткрытьЗначение(ПолучитьРазностьДат(ОбработкаОбъект.ЗаказНаряд)); но какой-бы заказ-наряд я не выбрал в обработке, всё время вылезает "Неопределено". Код Функции получения разности дат Функция ПолучитьРазностьДат(ЗН)Экспорт Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РАЗНОСТЬДАТ(ЗаказНаряд.ДатаНачала, ЗаказНаряд.ДатаОкончания, ДЕНЬ) КАК Разность |ИЗ | Документ.ЗаказНаряд КАК ЗаказНаряд |ГДЕ | ЗаказНаряд.Дата МЕЖДУ &Дата1 И &Дата2 | И ЗаказНаряд.ВидРемонта = &ВидРемонта | И ЗаказНаряд.Автомобиль = &Авто | |СГРУППИРОВАТЬ ПО | РАЗНОСТЬДАТ(ЗаказНаряд.ДатаНачала, ЗаказНаряд.ДатаОкончания, ДЕНЬ)"; Дата2 = ТекущаяДата(); Дата1 = Дата2 - 365*24*3600; Запрос.УстановитьПараметр("Дата1", Дата1); Запрос.УстановитьПараметр("Дата2", Дата2); Запрос.УстановитьПараметр("ВидРемонта", Справочники.ВидыРемонта.НайтиПоНаименованию("Гарантия пр")); Запрос.УстановитьПараметр("Авто", ЗН.Автомобиль); РазностьДат = Запрос.Выполнить(); Выборка = РазностьДат.Выбрать(); СуммаДней = 0; Пока Выборка.Следующий() Цикл СуммаДней2 = СуммаДней + Выборка.Разность; Сообщить(СуммаДней2); КонецЦикла; КонецФункции // ПолучитьРазностьДат() |
|||
11
KindLion
10.08.12
✎
10:19
|
(9) ???? Посмотри отладчиком - есть ли в Рез какое-либо значение, какой тип этого значения, и что будет с этим значением после преобразования его в строку.
|
|||
12
KindLion
10.08.12
✎
10:24
|
(10) Посмотрел функцию.
Она смешная, уж извини. Она ж у тебя ничего не возвращает. Ясен пень, что будет неопределено. Вот если ты напишешь в последней строке функции Возврат СуммаДней2 - то получишь что-либо хорошее. :) |
|||
13
_stay true_
10.08.12
✎
10:32
|
KindLion
я в этой сфере новичок, неделю как курсы окончил))) спасибо тебе за всё, будем пробовать!) |
|||
14
Ksandr
10.08.12
✎
10:36
|
Не, надо как гуанокодеры - создать глобальную переменную в модуле сеанса, при нажатии кнопки выполнить писать туда данные, а при открытии второй формы читать :)
|
|||
15
_stay true_
10.08.12
✎
10:40
|
Для начала попытаюсь обойтись без создания второй формы
|
|||
16
zladenuw
10.08.12
✎
10:44
|
(0) так выводи в предупреждение результат твой функции и делов то
|
|||
17
_stay true_
10.08.12
✎
10:45
|
KindLion
Заработало!Спасибо тебе огромное! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |