|
Формирование ветсправок | ☑ | ||
---|---|---|---|---|
0
Ленулькин
28.08.13
✎
09:19
|
Помогите пожалуйста написать простой отчет по ветспракам! Чтобы при выборе даты формировалась табличка,
Документ Сумма Контагент Фирма АдресдОставки Грузополуч Экспедитор Спасибо. Или подскажите с чего начать? |
|||
1
Wobland
28.08.13
✎
09:20
|
подсказываю. файл - новый - отчёт
|
|||
2
Wobland
28.08.13
✎
09:22
|
уважаемые гуру! помогите сварить нехитрый суп с мясом. чтобы были ингредиенты:
мясо, капуста, картошка, соль, вода, макароны, рис заранее спасибо! |
|||
3
Ленулькин
28.08.13
✎
13:36
|
ну в чем Вы правы!
|
|||
4
Ленулькин
28.08.13
✎
13:37
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
Если ПустаяСтрока(ПолеВвода) Тогда Предупреждение("слово для поиска - ВЕТ"); Возврат; КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = " |Выбрать | ЗаказПокупателя.Ссылка |ИЗ |Документ.ЗаказПокупателя КАК ЗаказПокупателя | |ГДЕ |ЗаказПокупателя.Дата МЕЖДУ &НачПериода И &КонПериода |И(ЗаказПокупателя.Комментарий.ВетСправка = &Истина) ИЛИ (ЗакаПокупателя.Контрагент.ГоловнойКонтрагент В(&СписокКонтр)) | И ((ЗаказПокупателя.Контрагент.ТочкаДляВетСправки = (&ПустаяТочкаДляВетСправки)) |СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Ссылка | |УПОРЯДОЧИТЬ ПО |ЗаказПокупателя.Дата"; Запрос.УстановитьПараметр("Усл","%"+ПолеВвода+"%"); Запрос.УстановитьПараметр("НачПериода",НачПериода); Запрос.УстановитьПараметр("КонПериода",КонПериода); Запрос.УстановитьПараметр("Истина", Истина); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); ТЗ.Очистить(); Пока Выборка.Следующий() Цикл НоваяСтрока = ТЗ.Добавить(); НоваяСтрока.Документ = Выборка.Ссылка; НоваяСтрока.КонтрАгент = Выборка.Ссылка.Контрагент; НоваяСтрока.Адрес = Выборка.Ссылка.АдресДоставки; НоваяСтрока.Организация = Выборка.Ссылка.Организация; НоваяСтрока.Экспедитор = Выборка.Ссылка.Экспедитор; НоваяСтрока.Сумма = Выборка.Ссылка.СуммаДокумента; КонецЦикла; КонецПроцедуры Процедура ВыбПериодНажатие(Элемент) НастройкаПериода = Новый НастройкаПериода; НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода))); НастройкаПериода.РедактироватьКакИнтервал = Истина; НастройкаПериода.РедактироватьКакПериод = Истина; НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период; Если НастройкаПериода.Редактировать() Тогда НачПериода = НастройкаПериода.ПолучитьДатуНачала(); КонПериода = НастройкаПериода.ПолучитьДатуОкончания(); КонецЕсли; КонецПроцедуры Процедура ТЗ(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ТекСтрока = ЭлементыФормы.ТЗ.ТекущаяСтрока; Если ТекСтрока <> Неопределено Тогда ФормаЭлемента = ТекСтрока.Документ.Ссылка.ПолучитьФорму(); ФормаЭлемента.ОткрытьМодально(); КонецЕсли; КонецПроцедуры НачПериода = ТекущаяДата(); КонПериода = ТекущаяДата(); //Если ПустаяСтрока(ПолеВвода) Тогда // Предупреждение("Нет слова для поиска"); // Возврат; //КонецЕсли; //Запрос = Новый Запрос; //Запрос.Текст = " //|Выбрать //|ЗаказПокупателя.Ссылка //|ИЗ //|Документ.ЗаказПокупателя Как ЗаказПокупателя, //|ГДЕ //|ЗаказПокупателя.Дата МЕЖДУ &НачПериода И &КонПериода //|СГРУППИРОВАТЬ ПО //|ЗаказПокупателя.ССылка //| //|УПОРЯДОЧИТЬ ПО //|ЗаказПокупателя.Дата //Запрос.УстановитьПараметр("Усл","%"+ПолеВвода+"%"); //Запрос.УстановитьПараметр("НачПериода",КонПериода); //Запрос.УстановитьПараметр("КонПериода",КонПериода); //Выборка = Запрос.Выполнить().Выбрать(); //ТЗ.Очистить(); //Пока Выборка.Следующий() Цикл // НоваяСтрока = Состав.Добавить(); // НоваяСтрока.Документ = Выборка.Ссылка; //КонецЦикла; Подскажите почему ошибка выходит "В поле введены некоректные данные" Продолжить? Нажимаю "Да" и все больше ничего не происходит( Что именно не корректно? Никак не могу сделать обработку |
|||
5
Wobland
28.08.13
✎
13:39
|
(4) данные некорректны
|
|||
6
Wobland
28.08.13
✎
13:39
|
а на экзамене за отчёт на данных документов ставят на горох
|
|||
7
Wobland
28.08.13
✎
13:40
|
а ещё запрос сам умеет выгружаться в ТЗ. короче, всё выкинуть, сделать правильно
|
|||
8
Ленулькин
28.08.13
✎
13:40
|
очень остроумно, вы бы лучше помогли объяснили, если не хотите тогда вообще лучше ничего не писать
|
|||
9
Wobland
28.08.13
✎
13:41
|
(8) а ты спрашивай, не стесняйся. делать всё мне пока лениво
|
|||
10
Галахад
гуру
28.08.13
✎
13:42
|
Поле ввода точно строка?
|
|||
11
Ненавижу 1С
гуру
28.08.13
✎
13:42
|
(8) а фото где?
|
|||
12
Ленулькин
28.08.13
✎
13:44
|
как здесь фото вставить?
|
|||
13
Wobland
28.08.13
✎
13:45
|
(12) тыц сюда: Ленулькин
|
|||
14
Ленулькин
28.08.13
✎
13:46
|
да действительно поле ввода была не строка, исправила теперь выдает другую ошибку
{Форма.Форма(28)}: Ошибка при вызове метода контекста (Выполнить): {(11, 1)}: Ожидается выражение ")" <<?>>СГРУППИРОВАТЬ ПО Результат = Запрос.Выполнить(); Скажите что значит? Как дальше? |
|||
15
Wobland
28.08.13
✎
13:47
|
(14) это значит, что у тебя запрос синтаксически неверне
|
|||
16
Wobland
28.08.13
✎
13:48
|
фото супер
|
|||
17
Ленулькин
28.08.13
✎
13:48
|
фото загрузила как го сюда вставить?
|
|||
18
Ленулькин
28.08.13
✎
13:48
|
ах видимо уже дошло, конечно супре, лучше не бывает
|
|||
19
mulmulya
28.08.13
✎
13:50
|
|И(ЗаказПокупателя.Комментарий.ВетСправка = &Истина) ИЛИ (ЗакаПокупателя.Контрагент.ГоловнойКонтрагент В(&СписокКонтр))
| И ((ЗаказПокупателя.Контрагент.ТочкаДляВетСправки = (&ПустаяТочкаДляВетСправки)) со скобочками непорядок, вот и ругается |
|||
20
mulmulya
28.08.13
✎
13:52
|
А вообще им твое фото надо, а не формы отчета)))
|
|||
21
Ленулькин
28.08.13
✎
13:54
|
да изначально было понятно, не ужели я еще буду фото свое выкладывать пусть на отчет любуются!
|
|||
22
Wobland
28.08.13
✎
13:55
|
(21) уже любуемся. тему можно закрывать
|
|||
23
Ненавижу 1С
гуру
28.08.13
✎
13:55
|
(21) нет нормального фота,нет нормального решения проблемы
|
|||
24
mulmulya
28.08.13
✎
13:56
|
вместо
| И ((ЗаказПокупателя.Контрагент.ТочкаДляВетСправки = (&ПустаяТочкаДляВетСправки)) надо | И (ЗаказПокупателя.Контрагент.ТочкаДляВетСправки В (&ПустаяТочкаДляВетСправки)) или | И (ЗаказПокупателя.Контрагент.ТочкаДляВетСправки = &ПустаяТочкаДляВетСправки) смотря что это за параметр, что-то я в коде не нашла его |
|||
25
Ленулькин
28.08.13
✎
14:05
|
вот у меня получился запрос
Запрос.УстановитьПараметр("Усл","%"+ПолеВвода+"%"); Запрос.УстановитьПараметр("НачПериода",НачПериода); Запрос.УстановитьПараметр("КонПериода",КонПериода); //Запрос.УстановитьПараметр("Истина", Истина); Запрос.УстановитьПараметр("СписокКонтр", Справочники.Контрагенты.НайтиПоКоду("63764")); СписокКонтр = Новый СписокЗначений; //МПР СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02254")); //ШЕД СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02202")); //Магнит СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02069")); //Самарский продукт (понедельник и четверг) СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01631")); //Омега-97 СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01553")); //КОпейка (одна справка на головное) СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01614")); Запрос.УстановитьПараметр("СписокКонтр", СписокКонтр); Запрос.УстановитьПараметр("ПустаяТочкаДляВетСправки", Справочники.Контрагенты.ПустаяСсылка()); Результат = Запрос.Выполнить(); |
|||
26
mulmulya
28.08.13
✎
14:07
|
(25) в чем проблема?
|
|||
27
Wobland
28.08.13
✎
14:08
|
(26) она хвастается
(25) >Запрос.УстановитьПараметр("Истина", Истина); мне нравится, продолжай |
|||
28
Ленулькин
28.08.13
✎
14:09
|
{Форма.Форма(46)}: Ошибка при вызове метода контекста (Выполнить): {(9, 31)}: Поле не найдено "ЗаказПокупателя.Комментарий.ВетСправка"
И(ЗаказПокупателя.Комментарий.<<?>>ВетСправка = Истина) ИЛИ (ЗакаПокупателя.Контрагент.ГоловнойКонтрагент В(&СписокКонтр)) Результат = Запрос.Выполнить(); Вот в чем! |
|||
29
Wobland
28.08.13
✎
14:10
|
(28) может, и правда нет такого поля у комментария?
|
|||
30
mulmulya
28.08.13
✎
14:11
|
(28) А комментарий это реквизит документа? И значение у него строка?
|
|||
31
mulmulya
28.08.13
✎
14:12
|
(30) не значение, а тип то есть
|
|||
32
Wobland
28.08.13
✎
14:13
|
очень интересно понять, что девушка имела в виду, когда сочиняла это. не могу осилить
|
|||
33
mulmulya
28.08.13
✎
14:15
|
А вот значение, скорее всего, "ВетСправка"
наверное так: И(ЗаказПокупателя.Комментарий = ""ВетСправка"") ИЛИ (ЗакаПокупателя.Контрагент.ГоловнойКонтрагент В(&СписокКонтр)) а это лучше убрать: Запрос.УстановитьПараметр("Истина", Истина); |
|||
34
Ленулькин
28.08.13
✎
14:43
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
Если ПустаяСтрока(ПолеВвода) Тогда Предупреждение("Нет слова для поиска"); Возврат; КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = " |Выбрать | ЗаказПокупателя.Ссылка |ИЗ |Документ.ЗаказПокупателя КАК ЗакаПокупателя | |ГДЕ |ЗаказПокупателя.Дата МЕЖДУ &НачПериода И &КонПериода |И(ЗаказПокупателя.Сделка.ВетСправка = Истина) ИЛИ (ЗаказПокупателя.Контрагент.ГоловнойКонтрагент В(&СписокКонтр)) |СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Ссылка | |УПОРЯДОЧИТЬ ПО | ЗаказПокупателя.Дата"; Запрос.УстановитьПараметр("Усл","%"+ПолеВвода+"%"); Запрос.УстановитьПараметр("НачПериода",НачалоДня(НачПериода)); Запрос.УстановитьПараметр("КонПериода",КонецДня(КонПериода)); Запрос.УстановитьПараметр("СписокКонтр", Справочники.Контрагенты.НайтиПоКоду("63764")); СписокКонтр = Новый СписокЗначений; //МПР СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02254")); //ШЕД СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02202")); //Магнит СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("02069")); //Самарский продукт (понедельник и четверг) СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01631")); //Омега-97 СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01553")); //КОпейка (одна справка на головное) СписокКонтр.Добавить(Справочники.Контрагенты.НайтиПоКоду("01614")); Запрос.УстановитьПараметр("СписокКонтр", СписокКонтр); Результат = Запрос.Выполнить(); ВыборкаДетали = Результат.Выбрать(); ТЗ.Очистить(); Пока ВыборкаДетали.Следующий() Цикл НоваяСтрока = ТЗ.Добавить(); НоваяСтрока.Документ = ВыборкаДетали.Ссылка; НоваяСтрока.КонтрАгент = ВыборкаДетали.Ссылка.Контрагент; НоваяСтрока.Адрес = ВыборкаДетали.Ссылка.АдресДоставки; НоваяСтрока.Организация = ВыборкаДетали.Ссылка.Организация; НоваяСтрока.Экспедитор = ВыборкаДетали.Ссылка.ФизическиеЛица; НоваяСтрока.Сумма = ВыборкаДетали.Ссылка.СуммаДокумента; КонецЦикла; КонецПроцедуры Процедура ВыбПериодНажатие(Элемент) НастройкаПериода = Новый НастройкаПериода; НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода))); НастройкаПериода.РедактироватьКакИнтервал = Истина; НастройкаПериода.РедактироватьКакПериод = Истина; НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период; Если НастройкаПериода.Редактировать() Тогда НачПериода = НастройкаПериода.ПолучитьДатуНачала(); КонПериода = НастройкаПериода.ПолучитьДатуОкончания(); КонецЕсли; КонецПроцедуры Процедура ТЗ(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ТекСтрока = ЭлементыФормы.ТЗ.ТекущаяСтрока; Если ТекСтрока <> Неопределено Тогда ФормаЭлемента = ТекСтрока.Документ.Ссылка.ПолучитьФорму(); ФормаЭлемента.ОткрытьМодально(); КонецЕсли; КонецПроцедуры НачПериода = ТекущаяДата(); КонПериода = ТекущаяДата(); У меня как всегда опять ошибка! {Форма.Форма(43)}: Ошибка при вызове метода контекста (Выполнить): {(8, 1)}: Поле не найдено "ЗаказПокупателя.Дата" <<?>>ЗаказПокупателя.Дата МЕЖДУ &НачПериода И &КонПериода Результат = Запрос.Выполнить(); |
|||
35
mulmulya
28.08.13
✎
14:50
|
|Документ.ЗаказПокупателя КАК ЗакаПокупателя
ничего не настораживает? |
|||
36
Ленулькин
28.08.13
✎
14:59
|
Настораживает моя не внимательность. Спасибо сейчас попробую
|
|||
37
Ленулькин
28.08.13
✎
15:06
|
{Форма.Форма(56)}: Поле объекта не обнаружено (Экспедитор)
НоваяСтрока.Экспедитор = ВыборкаДетали.Ссылка.Экспедитор; тип: СправочникСсылка.ФизическиеЛица |
|||
38
Wobland
28.08.13
✎
15:24
|
возьми уже СКД и перестань заниматься ерундой
|
|||
39
Ленулькин
28.08.13
✎
15:39
|
а без системы компоновки данных нельзя это все закончить!Я уже 2 день мучаюсь, мне хотя бы эт сначала закончить чтобы к СКД изучение приступить(
|
|||
40
Enders
28.08.13
✎
15:49
|
(39) Я так предполагаю что вы учитесь или уже работаете?
Если учитесь, то какая разница сколько времени потратите, главное понимание. Да и видео-уроки какие-нить бы посмотрели, книжки почитали... А если работаете... то...всё равно сначала б посмотрели, почитали, поняли, а только потом делали. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |