Имя: Пароль:
1C
 
Помогите пожалуйся! Я сломал себе мозг!
0 lomakin_anton
 
06.12.10
10:06
Извините что будет много букв, их особо можно не читать, важна суть:

Вариант первый:
//Обработчики событий
&НаКлиенте
Процедура ПриОткрытии(Отказ)
   Элементы.НадписьВозможностьЗаявкиВПроизводство.Заголовок="Создание заявки от "+ТекущаяДата();    
КонецПроцедуры

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



//Получение
&НаСервере
Функция ПолучитьКонстантуНачалаЗаявок()
   Результат = Константы.ВремяНачалаЗаявок.Получить();
   Возврат Результат;
КонецФункции

&НаСервере
Функция ПолучитьКонстантуОкончанияЗаявок()
   Результат = Константы.ВремяОкончанияЗаявок.Получить();
   Возврат Результат;
КонецФункции

&НаСервере
Функция ПолучитьПриоритет()
   Приоритет = Новый Структура;
   Приоритет.Вставить("КоличествоДней", Объект.Контрагент.Приоритет.КоличествоДней);
   Приоритет.Вставить("ВозможностьОтменыЗаказа", Объект.Контрагент.Приоритет.ВозможностьОтменыЗаказа);
   Приоритет.Вставить("Код", Объект.Контрагент.Приоритет.Код);
   Возврат Приоритет;
КонецФункции
//Заполнение

&НаСервере
Процедура УстановитьДатуОтгрузки(Дата)
   Объект.ДатаОтгрузки = Дата;
КонецПроцедуры;

Всё прекрасно! Синтаксический контроль отлично.

Вариант второй(добавил последнюю в списке процедуру):
Процедура УстановитьДатуОтгрузки(Дата)
   Объект.ДатаОтгрузки = Дата;
КонецПроцедуры;

&НаСервере
Процедура ЗаполнитьТаблицуДоговоров()
   Запрос = Новый Запрос;
   Запрос.Текст = "ВЫБРАТЬ
   |    ДоговорыКонтрагентов.Ссылка КАК Договор,
   |    ДоговорыКонтрагентов.Комиссия,
   |    ДоговорыКонтрагентов.ВидДоговора
   |ПОМЕСТИТЬ ДоговорыКонтрагента
   |ИЗ
   |    Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
   |ГДЕ
   |    ДоговорыКонтрагентов.Владелец = &Владелец
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ
   |    ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток КАК Долг,
   |    ДоговорыКонтрагента.Договор,
   |    ДоговорыКонтрагента.Комиссия,
   |    ДоговорыКонтрагента.ВидДоговора
   |ИЗ
   |    ДоговорыКонтрагента КАК ДоговорыКонтрагента
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&ДатаПолученияДанных, ) КАК ВзаиморасчетыСКонтрагентамиОстатки
   |        ПО ДоговорыКонтрагента.Договор = ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента
   |            И ДоговорыКонтрагента.Договор.Владелец = ВзаиморасчетыСКонтрагентамиОстатки.Контрагент";
   Запрос.УстановитьПараметр("Владелец", Объект.Контрагент);
   Запрос.УстановитьПараметр("ДатаПолученияДанных", Объект.ДатаОтгрузки);
   Объект.ДоговорыКонтрагента.Загрузить(Запрос.Выполнить().Выгрузить());
КонецПроцедуры

Это начало вызывать следующие ошибки:
{Обработка.ИнтерфейсЗаявок.Форма.ФормаУ.Форма(87,1)}: Неопознанный оператор
<<?>>&НаСервере (Проверка: Толстый клиент (обычное приложение))
{Обработка.ИнтерфейсЗаявок.Форма.ФормаУ.Форма(1,1)}: Обнаружено логическое завершение исходного текста модуля (Проверка: Толстый клиент (обычное приложение))
{Обработка.ИнтерфейсЗаявок.Форма.ФормаУ.Форма(87,1)}: Неопознанный оператор
<<?>>&НаСервере (Проверка: Толстый клиент (обычное приложение))
{Обработка.ИнтерфейсЗаявок.Форма.ФормаУ.Форма(1,1)}: Обнаружено логическое завершение исходного текста модуля (Проверка: Толстый клиент (обычное приложение))


Что за фигня? Умоляю, помогите! Я уже просто в панике, не знаю что делать!
1 zzerro
 
06.12.10
10:08
КонецПроцедуры;
2 zzerro
 
06.12.10
10:09
точку с запятой убери
3 RomaH
 
naïve
06.12.10
10:09
КонецПроцедуры;

точка с запятой не лишние?
4 Futarkh
 
06.12.10
10:09
(0) КонецПроцедуры;
5 Абирамбул
 
06.12.10
10:09
может нужно

Процедура УстановитьДатуОтгрузки(Дата)
   Объект.ДатаОтгрузки = Дата;
КонецПроцедуры
6 zzerro
 
06.12.10
10:09
Процедура УстановитьДатуОтгрузки(Дата)
   Объект.ДатаОтгрузки = Дата;
КонецПроцедуры; <- вот эту точку с запятой
7 lomakin_anton
 
06.12.10
10:09
Всё, я разобрался. Тему можно закрыть и удалить, чтобы не позориться:)
8 lomakin_anton
 
06.12.10
10:10
(1)(2)(3)(4)(5)(6)

Спасибо вам:)