|
v7: ПУБ присвоить функцию Флажок | ☑ | ||
---|---|---|---|---|
0
AlaMaRit
11.09.15
✎
09:27
|
ребята помогите плизЧИК, как присвоить функцию флажку, чтобы когда я делаю взаиморасчёты с контрагентами, при выборе даты и выборе группы контрагентов, я ставил флажок "не оплаченные накладные", и мне показывалось толь не оплаченные накладные за данные отрезок времени
|
|||
1
ДенисЧ
11.09.15
✎
09:33
|
лучше кнопку, а не флажок
|
|||
2
AlaMaRit
11.09.15
✎
09:35
|
(1) а как присвоить этой кнопке задачу
|
|||
3
ДенисЧ
11.09.15
✎
09:35
|
В свойствах - вторая вкладка, поле функция
|
|||
4
AlaMaRit
11.09.15
✎
09:39
|
дополнительно - Формула?
|
|||
5
AlaMaRit
11.09.15
✎
09:41
|
(3) мне надо что при нажатии на кнопку, маниторились все накладные и отсеивались все оплаченные и отображались неоплаченные за заданный период времени
|
|||
6
ДенисЧ
11.09.15
✎
09:42
|
(4) да
(5) нифуя не понял... |
|||
7
AlaMaRit
11.09.15
✎
09:48
|
(6) вот смотри, я захожу Отчеты -> контрагенты -> взаиморасчеты -> там выбираю дату С и дату ПО -> выбираю Контрагента или группу контрагентов -> нажимаю на мою кнопку -> и мне отображается таблица, где список контрагентов с неоплаченными накладными, с датой отгрузки и суммой долга.
Как то так |
|||
8
AlaMaRit
11.09.15
✎
09:49
|
если б можно было загружать суда картинки я показалбы
|
|||
9
aka AMIGO
11.09.15
✎
10:14
|
(8) вот сюда: http://pics.rsh.ru/ загружай картинки, а в мисту тащи ссылку
|
|||
10
AlaMaRit
11.09.15
✎
10:15
|
(9) ООО салам Амиго, как дела?
|
|||
11
aka AMIGO
11.09.15
✎
10:16
|
(10) салам, AlaMaRit ! спасибо, нормально :)
|
|||
12
AlaMaRit
11.09.15
✎
10:16
|
вот картинка http://pics.rsh.ru/img/123_arr2a1hu.jpg
|
|||
13
AlaMaRit
11.09.15
✎
10:34
|
(11) сможешь помочь?
|
|||
14
AlaMaRit
11.09.15
✎
12:35
|
ЛЮДИИИИ сможет мне кто нить помочь с моим вопросом?
|
|||
15
Ёпрст
11.09.15
✎
12:38
|
(12) все накладные, которые висят в долгах, и так не оплачены.
Зачем вам эта кнопка ? |
|||
16
aka AMIGO
11.09.15
✎
12:45
|
(14) вроде-б уже посоветовали в (3)
в свойствах: http://pics.rsh.ru/img/11_d9mebc05.png в коде модуля отчета: http://pics.rsh.ru/img/12_aohe3xmz.png В теле процедуры пишешь свой код. (15) именно так ТС представляет себе работу с отчетом. Опыт приходит со временем :) В коде отчета ему, видимо, сложно разобраться, вот и ищет пути :) |
|||
17
AlaMaRit
11.09.15
✎
12:54
|
(15) а где эти накладные посмотреть?
|
|||
18
AlaMaRit
11.09.15
✎
12:56
|
(16) все что ты написал понятно, не понятно только одно, В теле процедуры пишешь свой код. какой код надо вписать, чтоб процедура выводила именно неоплаченные накладные?
|
|||
19
Fedor-1971
11.09.15
✎
12:57
|
(14) у тебя есть флажок "выводить без групп" , посмотри как называется реквизит, посмотри как его обрабатывают в Сформировать() и сделай аналогично.
Примерно так: выносишь на форму флажок, назначаешь ему Идентификатор, например, НеОплаченныеНакладные, в заголовок вносишь текст для формы. В процедуре Сформировать() вставляешь условие в нужном месте Если НеОплаченныеНакладные=1 тогда некие действия. (15) У тебя же отчёт он и выведет на экран, смотри сколько хочешь. (16) Так твоего кода ни кто не видит. Предлагаешь догадаться? |
|||
20
Ёпрст
11.09.15
✎
12:59
|
(17) ты не поверишь, в типовом отчете ведомость по контрагентам
|
|||
21
AlaMaRit
11.09.15
✎
13:00
|
(20) нет у меня типового отчета ведомость по контрагентам
|
|||
22
Ёпрст
11.09.15
✎
13:02
|
(21) смотри какие есть (в типовом ПУБ-е всё и так есть)
|
|||
23
AlaMaRit
11.09.15
✎
13:02
|
(22) ПУБ-?
|
|||
24
AlaMaRit
11.09.15
✎
13:03
|
(19) //*******************************************
процедура выбДаты(Реж) если Реж = 0 тогда если ДатаС > ПолучитьДатуТА() тогда ДатаС = ПолучитьДатуТА(); Предупреждение("Нельзя выбирать дату начала периода больше ТА", 30); иначеЕсли ДатаС > ДатаПо тогда ДатаС = ДатаПо; Предупреждение("Нельзя выбирать дату начала периода больше даты конца", 30); конецЕсли; иначе если ДатаПо < ДатаС тогда ДатаПо = ДатаС; Предупреждение("Некорректный интервал дат", 30); конецЕсли; конецЕсли; конецПроцедуры //******************************************* Процедура Сформировать() перем Реж; Спис = СоздатьОбъект("СписокЗначений"); Спис.ДобавитьЗначение(0,"Итоги"); Спис.ДобавитьЗначение(1,"Кратко"); Спис.ДобавитьЗначение(2,"Подробно"); Спис.ДобавитьЗначение(3,"Неоплаченные документы"); если Спис.ВыбратьЗначение(Реж,"Режим печати",,,1) = 0 тогда возврат; конецЕсли; Спис = 0; Если реж=3 Тогда//Неоплаченные документы Состояние("Выполняется обработка. Ждите..."); Таб = СоздатьОбъект("Таблица"); Заг=1; Если ПустаяСтрока(выбПост)<>1 Тогда Заг="По "+ВыбПост; КонецЕсли; Заг1=""; Таб.ИсходнаяТаблица("Таблица1"); Таб.ВывестиСекцию("Шапка"); Рег=создатьОбъект("Регистр.Взаиморасчеты"); Рег1=создатьОбъект("Регистр.Партии"); сумДолг4=0; СумНадо4=0; Табл = СоздатьОбъект("ТаблицаЗначений"); б=1; Табл.НоваяКолонка(); Табл.НоваяКолонка(); Табл.НоваяКолонка(); Табл.НоваяКолонка(); Табл.НоваяКолонка(); Таб1 = СоздатьОбъект("ТаблицаЗначений"); Сп = СоздатьОбъект("СписокЗначений"); Таб1.НоваяКолонка(); Таб1.НоваяКолонка(); Таб1.НоваяКолонка(); Таб1.НоваяКолонка(); СпрФ=СоздатьОбъект("Справочник.ФирмыК"); ин=1; Док=СоздатьОБъект("Документ"); Док.ОбратныйПорядок(1); Если ВыбПост.Выбран()=1 Тогда Док.ВыбратьПоЗначению(Дата(2004,9,1),ДатаПо,"Поставщик",ВыбПост); Иначе Док.ВыбратьДокументы(Дата(2004,9,1),ДатаПо); КонецЕсли; Пока (Док.ПолучитьДокумент()>0) Цикл Если Док.проведен()=0 Тогда Продолжить; КонецЕсли; Если (Док.Вид()="ПрихНакладная") Тогда Если выбФир.Выбран()=1 Тогда Если (Док.Фирма=ВыбФир) Тогда Иначе Продолжить; КонецЕсли; КонецЕсли; Стр=""; Если сп.НайтиЗначение(Док.Поставщик)<>0 тогда КонецЕсли; Если Таб1.НайтиЗначение(Док.Поставщик,Стр,1)=0 Тогда Если ПустоеЗначение(выбфир)=1 Тогда СумДолг=Рег.СводныйОстаток(Док.Поставщик,,,"Сумма"); Иначе СумДолг=Рег.СводныйОстаток(Док.Поставщик,,ВыбФир,"Сумма"); КонецЕсли; СпрФ.ИспользоватьВладельца(Док.Поставщик); СпрФ.ИспользоватьДату(ДатаПо); Если СПРФ.НайтиПоРеквизиту("Фирма",Константа.ОснФирма,0)<>0 Тогда Срок=СпрФ.Дни; ВидР=СпрФ.ПоУмолчанию; КонецЕсли; СумДолг1=0; Если видР=0 Тогда Ост=Рег1.СводныйОстаток(,,ВыбФир,Док.Поставщик,"Себестоимость"); СумДолг1=СумДолг-Ост; КонецЕсли; Сп.ДобавитьЗначение(Док.Поставщик); Если СумДолг>0 Тогда Таб1.НоваяСтрока(); Стр=Таб1.КоличествоСтрок(); Таб1.УстановитьЗначение(стр,1,Док.Поставщик); Таб1.УстановитьЗначение(стр,2,СумДолг); Таб1.УстановитьЗначение(стр,3,СумДолг1); Таб1.УстановитьЗначение(стр,4,ВидР); Иначе Сп.ДобавитьЗначение(Док.Поставщик); Продолжить; Конецесли; КонецЕсли; СумДолг=Таб1.ПолучитьЗначение(стр,2); Если сумДолг<=0 Тогда Продолжить; КонецЕсли; Докум=Док.ТекущийДокумент(); ПрихДолг=Док.Итог("Сумма"); Если ПрихДолг<=СумДолг Тогда Долг=ПрихДолг; СумДолг=СумДолг-ПрихДолг; Иначе Долг=СумДолг; СумДолг=0; КонецЕсли; Таб1.УстановитьЗначение(стр,2,СумДолг); Табл.НоваяСтрока(); Табл.УстановитьЗначение(ин,1,Докум.ДатаДок); Табл.УстановитьЗначение(ин,2,Докум); Табл.УстановитьЗначение(ин,3,ПрихДолг); Табл.УстановитьЗначение(ин,4,Долг); Табл.УстановитьЗначение(ин,5,Докум.Поставщик); ин=ин+1; КонецЕсли; КонецЦикла; СумНадо=0; б=1; СумДолг2=0;СумНадо=0; Табл.Сортировать("5,1"); Если Табл.КоличествоСтрок()=0 Тогда Предупреждение("Неоплаченных документов нет!"); Возврат; КонецЕсли; Пс=Табл.ПолучитьЗначение(1,5); Таб.ВывестиСекцию("Контрагент"); Стр=""; СумДолг1=0;ВидР=1; Если таб1.НайтиЗначение(Пс,Стр,1)<>0 Тогда Если таб1.ПолучитьЗначение(Стр,4)=0 Тогда ВидР= таб1.ПолучитьЗначение(Стр,4); СумДолг1=таб1.ПолучитьЗначение(Стр,3); КонецЕсли; КонецЕсли; Для ин=1 По Табл.КоличествоСтрок() Цикл Если Пс<>Табл.ПолучитьЗначение(ин,5) Тогда Таб.ВывестиСекцию("Итог"); СумДолг4=СумДолг4+СумДолг2; СумНадо4=СумНадо4+СумНадо; Пс=Табл.ПолучитьЗначение(ин,5); Таб.ВывестиСекцию("Контрагент"); Стр=""; СумДолг1=0;ВидР=1; Если таб1.НайтиЗначение(Пс,Стр,1)<>0 Тогда Если таб1.ПолучитьЗначение(Стр,4)=0 Тогда СумДолг1=таб1.ПолучитьЗначение(Стр,3); ВидР= таб1.ПолучитьЗначение(Стр,4); КонецЕсли; КонецЕсли; СумДолг2=0; СумНадо=0; б=0; КонецЕсли; Докум=Табл.ПолучитьЗначение(ин,2); ПрихДолг=Табл.ПолучитьЗначение(ин,3); Долг=Табл.ПолучитьЗначение(ин,4); СумДолг2=СумДолг2+Долг; Если ВидР=0 Тогда Надо=?(СумДолг1>Долг,Долг,СумДолг1); СумДолг1=?(СумДолг1>Долг,СумДолг1-Долг,0); Иначе Надо=?(Докум.ДатаОплаты>ДатаПо,0,Долг); КонецЕсли; СумНадо=СумНадо+Надо; Таб.ВывестиСекцию("Док"); КонецЦикла; Таб.ВывестиСекцию("Итог"); СумДолг4=СумДолг4+СумДолг2; СумНадо4=СумНадо4+СумНадо; Если СумНадо4<>СумНадо Тогда Таб.ВывестиСекцию("Всего"); КонецЕсли; ОчиститьОкноСообщений(); Таб.Опции(0,0,5,0,0); Таб.ТолькоПросмотр(1); Таб.Показать("Взаиморасчеты",""); Возврат; КонецЕсли; ТекстЗапроса = "Период с ДатаС"; если ДатаПо >= ПолучитьДатуТА() тогда ТекстЗапроса = ТекстЗапроса + ";"; иначе ТекстЗапроса = ТекстЗапроса + " по ДатаПо;"; конецЕсли; ТекстЗапроса = ТекстЗапроса + "//{{ЗАПРОС(хочу) |Контрагент = Регистр.Взаиморасчеты.Контрагент; |ВидЗакупки = Регистр.Взаиморасчеты.ВидЗакупки; |Фирма = Регистр.Взаиморасчеты.Фирма; |Сум = Регистр.Взаиморасчеты.Сумма; |Докум = Регистр.Взаиморасчеты.ТекущийДокумент; |Проект = Регистр.Взаиморасчеты.ТекущийДокумент.Проект; |Функция Сумма = КонОст(Сум); |Функция НачДолг = НачОст(Сум); |Функция ПрихДолг = Приход(Сум); |Функция РасхДолг = Расход(Сум); |"//}}ЗАПРОС ; Если Проект = 1 тогда ТекстЗапроса = ТекстЗапроса + "Группировка Проект; |Группировка Контрагент " + ?(БезГрупп = 1, "Без Групп", "") + " упорядочить по " + ?(Упорядочить = 1, "Контрагент.Наименование", "Сумма") + ";";//Контрагент.Наименование;";// Иначе ТекстЗапроса = ТекстЗапроса + "Группировка Контрагент " + ?(БезГрупп = 1, "Без Групп", "") + " упорядочить по " + ?(Упорядочить = 1, "Контрагент.Наименование", "Сумма") + ";";//Контрагент.Наименование;"; конецЕсли; Итог=0; если Реж = 2 тогда ТекстЗапроса = ТекстЗапроса + "Группировка Докум упорядочить по Докум.ДатаДок;"; конецЕсли; если выбПост.Выбран()=1 тогда если выбПост.ЭтоГруппа()=1 тогда ТекстЗапроса = ТекстЗапроса + "Условие (Контрагент.ПринадлежитГруппе(выбПост)=1);"; Заг = "По контрагентам группы "+выбПост.Наименование; иначе ТекстЗапроса = ТекстЗапроса + "Условие (Контрагент = выбПост);"; Заг = "По контрагенту " + выбПост.Наименование; конецЕсли; иначе Заг = "По всем конрагентам"; конецЕсли; если выбВид.Выбран() = 1 тогда Заг1 = Заг1 + ", По "+строка(выбВид); ТекстЗапроса = ТекстЗапроса + "Условие (ВидЗакупки = выбВид);"; иначе Заг1 = Заг1 + ", По всем взаиморасчетам"; конецЕсли; если выбФир.Выбран() = 1 тогда Заг1 = Заг1 + ", По "+строка(выбФир); ТекстЗапроса = ТекстЗапроса + "Условие (Фирма = выбФир);"; иначе Заг1 = Заг1 + ", По всем фирмам"; конецЕсли; если ВыбПроект.Выбран() = 1 тогда Заг1 = Заг1 + ", По проекту: "+строка(ВыбПроект); ТекстЗапроса = ТекстЗапроса + "Условие (Проект = ВыбПроект);"; иначе Заг1 = Заг1 + ", По всем проектам"; конецЕсли; Запрос = СоздатьОбъект("Запрос"); Запрос.ВключитьSQL(1); если Запрос.Выполнить(ТекстЗапроса) = 0 тогда возврат; конецЕсли; Таб = СоздатьОбъект("Таблица"); если Реж = 0 тогда Таб.ИсходнаяТаблица("Итоги"); конецЕсли; Таб.ВывестиСекцию("Шапка"); НачДолг=0; ПрихДолг=0; РасхДолг=0; КонДолг=0; Прих1=0; Расх1=0; Если Проект = 1 Тогда пока Запрос.Группировка("Проект") = 1 цикл Таб.ВывестиСекцию("Проект"); пока Запрос.Группировка("Контрагент") = 1 цикл Если (НашДолг = 0) И (Запрос.Сумма > 0) Тогда Продолжить КонецЕсли;//НашДолг = 1 Если (Нулевые = 0) И (Запрос.Сумма = 0) Тогда Продолжить КонецЕсли;//Нулевые = 1 Если (ДолгКонтрагента = 0) И (Запрос.Сумма < 0) Тогда Продолжить КонецЕсли;//ДолгКонтрагента = 1 если Запрос.Контрагент.ЭтоГруппа()=1 тогда Таб.ВывестиСекцию("Группа"); иначе Таб.ВывестиСекцию("Контрагент"); НачДолг=НачДолг+Запрос.НачДолг; ПрихДолг=ПрихДолг+Запрос.ПрихДолг; РасхДолг=РасхДолг+Запрос.РасхДолг; КонДолг=КонДолг+Запрос.Сумма; конецЕсли; Итог=Итог+Запрос.Сумма; если Реж = 2 тогда Сум1 = Запрос.НачДолг; Пока Запрос.Группировка("Докум")=1 цикл если Запрос.Докум.Выбран()=1 тогда Прих1=Прих1+Запрос.ПрихДолг; Расх1=Расх1+Запрос.РасхДолг; Сум1=Сум1+Запрос.ПрихДолг-Запрос.РасхДолг; Таб.ВывестиСекцию("Докум"); конецЕсли; КонецЦикла; конецЕсли; конецЦикла; конецЦикла; Иначе пока Запрос.Группировка("Контрагент") = 1 цикл Если (НашДолг = 0) И (Запрос.Сумма > 0) Тогда Продолжить КонецЕсли;//НашДолг = 1 Если (Нулевые = 0) И (Запрос.Сумма = 0) Тогда Продолжить КонецЕсли;//Нулевые = 1 Если (ДолгКонтрагента = 0) И (Запрос.Сумма < 0) Тогда Продолжить КонецЕсли;//ДолгКонтрагента = 1 если Запрос.Контрагент.ЭтоГруппа()=1 тогда Таб.ВывестиСекцию("Группа"); иначе Таб.ВывестиСекцию("Контрагент"); НачДолг=НачДолг+Запрос.НачДолг; ПрихДолг=ПрихДолг+Запрос.ПрихДолг; РасхДолг=РасхДолг+Запрос.РасхДолг; КонДолг=КонДолг+Запрос.Сумма; конецЕсли; Итог=Итог+Запрос.Сумма; если Реж = 2 тогда Сум1 = Запрос.НачДолг; Пока Запрос.Группировка("Докум")=1 цикл если Запрос.Докум.Выбран()=1 тогда Прих1=Прих1+Запрос.ПрихДолг; Расх1=Расх1+Запрос.РасхДолг; Сум1=Сум1+Запрос.ПрихДолг-Запрос.РасхДолг; Таб.ВывестиСекцию("Докум"); конецЕсли; КонецЦикла; конецЕсли; конецЦикла; КонецЕсли;//Проект = 1 Таб.ВывестиСекцию("Подвал"); Таб.Опции(0,0,5,0,0); Таб.ТолькоПросмотр(1); Таб.Показать("Взаиморасчеты",""); КонецПроцедуры ДатаС = Мин(ПолучитьДатуТА(),НачМесяца(РабочаяДата())); ДатаПо = РабочаяДата(); вот это мой код? |
|||
25
Масянька
11.09.15
✎
13:03
|
(16) Не всегда (опыт) :(
|
|||
26
AlaMaRit
11.09.15
✎
13:03
|
эпро процедура взаиморасчетов
|
|||
27
Масянька
11.09.15
✎
13:04
|
Кстати, конфа не озвучена.
|
|||
28
Ёпрст
11.09.15
✎
13:04
|
(23) да, а что ? У вас по скриншоту - именно ОН
ПроизводствоУслугиБухгалтеря (ПУБ) |
|||
30
AlaMaRit
11.09.15
✎
13:06
|
(29) давай ты мне не будешь говорить что делать, хорошо? если по сути вопроса не можешь помочь, зачем умничать? я может не разбираюсь во всем том в чем ты разберешься, но хочу это узнать, ты ведь тоже когда то всему учился
|
|||
31
Масянька
11.09.15
✎
13:07
|
(29) Это ты сказал, но не ТС. Чего наезжаешь? (жалобно)
|
|||
32
Fedor-1971
11.09.15
✎
13:13
|
(23) Это 5. Заголовок 1С прочитай.
(30) Как-то больше похоже на то. сто ты хочешь, что бы за тебя сделали, а не разобраться. Но вот тебе подсказка: Если ВидР=0 Тогда Надо=?(СумДолг1>Долг,Долг,СумДолг1); СумДолг1=?(СумДолг1>Долг,СумДолг1-Долг,0); Иначе Надо=?(Докум.ДатаОплаты>ДатаПо,0,Долг); КонецЕсли; СумНадо=СумНадо+Надо; Таб.ВывестиСекцию("Док"); Тут проверь свой флажок и не выводи документы без остатка долга. Как сделать - разбирайся. |
|||
33
kobzon2
11.09.15
✎
13:18
|
Судя по скрину - отчет самопал. А в ПУБе вроде типового и нет, чтобы то что ТС хочет.
|
|||
34
AlaMaRit
11.09.15
✎
13:19
|
(32) разбираться я хочу, просто некоторые, если человек чего то не знает по теме, вместо того что бы подсказать, научить, подкалывают
|
|||
35
Ёпрст
11.09.15
✎
13:20
|
(33) всё там есть, анализ взаиморасчетов
|
|||
36
kobzon2
11.09.15
✎
13:29
|
(35) Ну да, в принципе ему это и надо. Никогда им не пользовался. Обычно своими отчетами по дебиторке с просрочкой.
|
|||
37
Fedor-1971
11.09.15
✎
13:31
|
(34) так не в школе же общаемся, а на форуме, кто как может так и помогает или прикалывается (дезу или пургу гонит - так голова тебе на то и дана что бы инфу фильтровать и прикалываться в ответ).
Большая нервозность в сём вопросе побуждает желание потролить нервных товарищей. |
|||
38
AlaMaRit
11.09.15
✎
13:32
|
(32) скажи этот код только на вывод без остатка?
|
|||
39
Масянька
11.09.15
✎
13:33
|
(38) Колоссально :)))))
|
|||
40
Fedor-1971
11.09.15
✎
13:40
|
(38) Сформируй отчёт и посмотри глазами.
По коду: всё что попало в отчёт с остатком >=0, но тебе нужны с остатками > 0 |
|||
41
Fedor-1971
11.09.15
✎
13:42
|
(38) Т.е. алгоритмизация - это просто страшное слово и читать код мы не собираемся?
|
|||
42
Масянька
11.09.15
✎
13:43
|
(41) Ты все-таки понял? :))))
|
|||
43
AlaMaRit
11.09.15
✎
13:48
|
(40) может сейчас ляпну фигню, вместо вопросиков в твоем коде я должен поставить
Надо=>0(СумДолг1>Долг,Долг,СумДолг1); СумДолг1=?(СумДолг1>Долг,СумДолг1-Долг,0); Иначе Надо=>0(Докум.ДатаОплаты>ДатаПо,0,Долг); |
|||
44
Fedor-1971
11.09.15
✎
14:01
|
(43)В справке посмотри что такое "?" и формат его использования.
Но, в принципе, можешь попробовать внести твои изменения, сделать синтаксический контроль модуля, вчитаться куда тебя пошлёт 1С и изучить основные сведения по встроенному языку. Рано тебе ещё отчёты исправлять, ты основ не знаешь. |
|||
45
AlaMaRit
11.09.15
✎
14:04
|
(44) я до сих пор пробую, кучу разных ошибок выдает, я вроде как исправляю, но ни как не получается, может направишь в нужное русло?
|
|||
46
avyub
11.09.15
✎
14:11
|
(43) ?() - это сокращенная запись если, тогда, иначе
|
|||
47
AlaMaRit
11.09.15
✎
14:22
|
(46) что значит если, тогда, иначе?
|
|||
48
avyub
11.09.15
✎
14:36
|
(47) я думаю после (46) тут уже никто больше ничего отвечать не будет. Потому что это самые азы построения алгоритмов
|
|||
49
avyub
11.09.15
✎
14:36
|
т.е. после (47)
|
|||
50
AlaMaRit
11.09.15
✎
14:40
|
(49) мне трудно в это прям сейчас вникнуть, тут со всех сторон давление на работе, вы можете просто сказать что так место ? надо вставить? А исходя из этого я может сделаю выводы и пойму что нить
|
|||
51
avyub
11.09.15
✎
14:43
|
запись ?(условие, результат1, результат2) аналогично (сокр) записи Если Условие истинно Тогда результат1 Иначе Результат2
|
|||
52
avyub
11.09.15
✎
14:44
|
вопрос это элемент синтаксиса, не нужно вместо него ничего подставлять
|
|||
53
AlaMaRit
11.09.15
✎
14:45
|
(51) это я в синтаксис помощнике увидел, поставил и 1 потом 2 все равно выдает ошибку
|
|||
54
AlaMaRit
11.09.15
✎
14:45
|
(52) а куда надо ставить?
|
|||
55
AlaMaRit
11.09.15
✎
14:48
|
Надо=?(Докум.ДатаОплаты>ДатаПо,0,Долг);
{Отчет.Взаиморасчеты.Форма.Модуль(279)}: Значение не представляет агрегатный объект (ДатаОплаты) |
|||
56
avyub
11.09.15
✎
14:54
|
в (24) у тебя была ДатаС, а сейчас стала ДатаОплаты? Смотри свои реквизиты
|
|||
57
avyub
11.09.15
✎
14:57
|
хотя ДатаС похоже Дата начала периода
|
|||
58
AlaMaRit
11.09.15
✎
14:58
|
(56) В (24) Я КОПИРОВАЛ свой не измененный код из конфигуратора, а (55) это (32) предложил
|
|||
59
AlaMaRit
11.09.15
✎
14:59
|
(57) CapsLock случайно нажал
|
|||
60
avyub
11.09.15
✎
14:59
|
(32) все правильно написал, он не знает реквизитов твоего документа и какие у тебя там перемнные
|
|||
61
avyub
11.09.15
✎
14:59
|
замени в (32) на свои
|
|||
62
AlaMaRit
11.09.15
✎
15:00
|
(60) свои я вроде выложил, если я про то вообще говорю
|
|||
63
AlaMaRit
11.09.15
✎
15:01
|
(61) еслиб я ещё знал где мои
|
|||
64
avyub
11.09.15
✎
15:03
|
(32) это обобщенный алгоритм. (24) это часть(32). (24 даже дважды будет нужно писать (для ВидР=0 и для Иначе)
|
|||
65
avyub
11.09.15
✎
15:04
|
хотя можно по-разному написать код (дело творческое)
|
|||
66
avyub
11.09.15
✎
15:05
|
можно вначале выбатьинтервал, а потом уже проверять условие проставленных галок)
|
|||
67
AlaMaRit
11.09.15
✎
15:06
|
(65) я примерно понял что ты мне щас сказал, и мне не посебе стало, слуша весь мой код есть, суть вопроса ты понял, по-братски если тебе не трудно, добей мне этот вопрос ))))
|
|||
68
avyub
11.09.15
✎
15:06
|
у тебя есть пример ВыводитьБезГрупп. Все стопроцентно аналогично
|
|||
69
AlaMaRit
11.09.15
✎
15:07
|
(68) где?
|
|||
70
avyub
11.09.15
✎
15:08
|
в коде твоего отчета
|
|||
71
avyub
11.09.15
✎
15:17
|
В ответ по теме: Никакой функции флажку присваивать не нужно. Нужно только проверить условие. флажек соответствует какому-то реквизиту. В коде: если РеквизитФлага=0 тогда Условие1 (снята галка) Иначе Условие2 (стоит галка). Как проще объяснить не представляю
|
|||
72
AlaMaRit
11.09.15
✎
15:22
|
(71) это мне понятно, мне не понятно какое строение кода должно быть для флажка, и главное в какое место кода взаиморасчеты его нужно ставить?
|
|||
73
AlaMaRit
11.09.15
✎
15:33
|
(71) скажи пожалста Если ВидР=0 Тогда - это и есть реквизит флага?
|
|||
74
Fedor-1971
11.09.15
✎
15:57
|
(73) запусти отладчик поставь точку останова внутри Сформировать() и пройдись по коду, заодно узнаешь как связаны реквизиты формы и внутренний код.
Как же ты, дитятко, попал на сопровождение 1С с такими знаниями языка и алгоритмизации? По ходу поколение интернета, книги читать не хотим, а специалистами становимся на форумах. Не лучший способ образования. Да, обидеть никоим образом не хотел. |
|||
75
avyub
11.09.15
✎
16:34
|
+(73) и еще вначале почитай, что такое реквизиты формы, переменные и операторы.
|
|||
76
avyub
11.09.15
✎
16:38
|
+(75) пока ты не видишь разницы между этими понятиями, обсуждать что-то дальше бессмысленно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |