Имя: Пароль:
1C
1C 7.7
v7: Вывести результат запроса на экранную форму.
0 tutsi
 
16.05.20
20:18
Здравствуйте все!
Очень прошу, не кидать в меня тапками и не смеяться. Триста лет ничего в семерке не делала. Забыла все напрочь.
Стоит простая задача.

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

Один параметр расчета «Наличкой» вводится вручную с экранной формы.

Стоит задача вывести на экранную форму результаты запроса с учетом корректировки с помощью параметра «Наличкой». Нужны три результата
[Запрос.СуммаРеализацияСумма - Запрос.СуммаВозвратСумма + Запрос.СуммаРеализацияСуммаКоронавирус - Запрос.СуммаВозвратСуммаКоронавирус + Наличкой#N019.2]
[Запрос.СуммаРеализацияСуммаКарточка - Запрос.СуммаВозвратСуммаКарточка - Наличкой#N019.2]
[Запрос.СуммаРеализацияСумма - Запрос.СуммаВозвратСумма + Запрос.СуммаРеализацияСуммаКоронавирус - Запрос.СуммаВозвратСуммаКоронавирус + Запрос.СуммаРеализацияСуммаКарточка #N019.2]
И на форме должна быть кнопка, обновляющая результаты.
Как лучше вывести эти данные? Вставить в таблицу значений на форму? Можно ли вывести просто результат в три текстовых поля?
1 Chameleon1980
 
16.05.20
20:23
тз на форму. выгрузить.
в поля получи итог по колонкам тз и сложи, вычти, умножь
2 Злопчинский
 
16.05.20
20:24
ну вычисли три результата и выведи красиво? проблема в чеМ?
3 Злопчинский
 
16.05.20
20:25
4 Злопчинский
 
16.05.20
20:26
Посчитай значения и выведи.
Проблема в чеМ?
5 Garykom
 
гуру
16.05.20
20:31
(0)  >|Период с (ТекущаяДата()) по (ТекущаяДата());

В курсе что смена не обязательно всего одна в день? За день может быть множество открытий/закрытий смены и разных кассиров.
А еще смена может быть до 24 часов и захватывать два дня включая ночь.
6 Злопчинский
 
16.05.20
20:35
(5) фиг сней, считается тупо "за день" и все.
7 Злопчинский
 
16.05.20
20:37
другое дело что правильнее это все вытянуть из Регистр.Продажи, но налабать на скорую руку - и так пойдет. особенно еесли все доги в одинаковой валюте и в одинаковой расстановке галочек по налогам. потому ч я - заподлянец - выставлю в док.реализация "НДС сверху", вместо того что все были НДС в сумме - трындец, даннеы отчета кривые
8 tutsi
 
16.05.20
20:41
Та вот в том-то и дело, что трогать сам запрос нельзя. Я понимаю, что из регистра проще.
Я не могу вообще вспомнить, как выгрузить итоги в ТЗ. И не могу найти где почитать про это.
9 tutsi
 
16.05.20
20:42
И да, нужно тупо считать за день. Без учета смен.
10 tutsi
 
16.05.20
20:45
(3) Вот да! Что-то такого типа должно получиться. Но с учётом корректировки по смешанной оплате, которая вводится через параметр на форме вручную.
Там всё очень примитивное. Менять ничего нет смысла, потому что сейчас всё переносится в восьмерку.
А база ТиС, но сильно дописанная под себя.
11 tutsi
 
16.05.20
20:53
(4) Проблема в том, что я тупая дура...
ТЗ на форму вставила. Два часа сижу, пытаюсь вывести туда данные. Но даже колонки не могу в ТЗ сделать. Точнее я, вроде, всё делаю, а они не выводятся...
Ради «вспомнить всё» написала примитивный отчёт с выводом документов в ТЗ. Всё получилось. А из запроса не выгружаются итоги. Именно итоги.
12 Злопчинский
 
16.05.20
21:25
Запрос.Выгрузит(твояТЗ,1,0)
13 tutsi
 
16.05.20
21:33
(12) Я так и делаю. Выходит сообщение
Запрос = СоздатьОбъект("ОтчетКассира");
Неудачная попытка создания объекта (ОтчетКассира)
14 Злопчинский
 
16.05.20
21:54
тутПеременнаякотораяобозначаетмойзапрос = СоздатьОбъект("Запрос");
ТекстЗапроса="...
тутПеременнаякотораяобозначаетмойзапрос.Выполнить(ТекстЗапроса);
15 tutsi
 
16.05.20
21:59
(14)
Запрос = СоздатьОбъект("ОтчетКассира");
    ТекстЗапроса =
    "//{{ЗАПРОС(ОтчетКассира)
+++
Запрос.Выполнить(ТекстЗапроса);

Так всё и есть.
16 rikkar
 
16.05.20
22:10
(13) может все-таки Запрос = СоздатьОбъект("Запрос"); ? А?
17 tutsi
 
16.05.20
22:15
(16) Точно!
Это уже пора бросить всё и идти спать. А завтра с нуля пробовать писать.
18 tutsi
 
16.05.20
22:20
(16) И да! Таблица, пока ещё некрасивая, но заполняется!
Осталось добиться, чтобы правильно считались итоги.
19 Злопчинский
 
16.05.20
23:00
(18) ты сможешь это!
галактеко волнуецо!
20 tutsi
 
17.05.20
15:30
(19) Цель пока не достигнута, но я на пути! 🤪
Никогда не чувствовала себя такой тупой! Как можно забыть то, чем занимался 20 лет? Ощущение, что мой мозг просто отформатировал раздел 1с...
21 Cthulhu
 
17.05.20
16:03
(20): зачем столько мук для изобретения велосипедов? ты же получаешь результат, выгруженный в ТЗ...
а в бесплатном доступе (и тем паче в платном - на ис, например) есть обработки, которые принимают в параметре ТЗ и выводят ее в удобном виде - и даже с предобработкой (типа сверток по группировкам, форматированием, установкой заголовков, и т.п.) и ее (предобработки) сохранением.восстановлением.
22 Злопчинский
 
17.05.20
16:05
(21) ну ты загнул! тут букварь с трудом читают. а в ты Ленинскую библиОтеку отправляешь...
23 Cthulhu
 
17.05.20
16:06
(22): тю. одна строка "ОткрытьФорму(...)" - никакая не библиотека...
24 tutsi
 
17.05.20
16:54
(21) Та цель поставлена не только сделать, но и «Вспомнить ВСЁ»! Ибо стыдно... Нужно уметь ручками писать, чтобы мозг работал. А разные приблуды, в виде обработок - это хорошо, но сильно расслабляет.
25 tutsi
 
17.05.20
16:55
(22) Букварь не с трудом. Просто времени на чтение букваря мало.
26 Злопчинский
 
17.05.20
17:04
Угадала все буквы но не смогла прочитать слово.. ;-)
27 tutsi
 
18.05.20
19:03
(26) Ну когда в одной руке внук, второй кашу мешаю - это не удивительно!
28 Злопчинский
 
18.05.20
19:51
Прям слеза скупая катится...
29 tutsi
 
18.05.20
21:03
(28) Та у самой так же.
А если не шутить - задача учебная. Младший ребетенок у меня в колледже учится. Вот таким вот занимаются во время самоизоляции и дистанционного обучения. И времени у нас на решение поставленной задачи - до конца месяца. Там кроме этого отчета ещё много чего нужно сделать. И всё вроде как получается. И печатная форма отчета этого формируется. Но ее нужно не через таблицу значений вывести. А вот результат на форму вывести не можем. Причём по условию задачи вывести результат нужно двумя способами - в текстовое поле и в таблицу значений.
Сейчас вот колонки заполняются, но их больше, чем по условию задачи. И вроде как, больше не меньше, но ведь оценку снизят за это.
И что мне больше всего непонятно, так это почему задание в семерке нужно делать...
30 Злопчинский
 
18.05.20
21:59
(29) "Сейчас вот колонки заполняются, но их больше, чем по условию задачи. " - ну так удали ненужные.
ТЗ.УдалитьКолонку("ЗдесьИдентификаторКолонки")
ТЗ.УдалитьКолонку(ИлипеременнаяСномеромКолонки)
31 tutsi
 
18.05.20
22:05
(30) Спасибо! С этим разобрались уже.
32 tutsi
 
06.06.20
17:55
Ну и...
Не смотря на то, что отчёт всё считал и показывал, сделали мы его, по мнению препода, не правильно.
Типа условия задания не выполнены.
Ну да! Заголовки столбцов мы упустили и они условиям задания не соответствуют. Но что ещё не так - понять не могу. И вся группа это задание выполнила не правильно.
Причём препод не смотрит конфигуратор. Его интересует только работа в пользовательском режиме. И не комментирует своё заключение.
Задача осталась всем на осень.
33 Злопчинский
 
06.06.20
18:46
(32) задание в этой ветке не озвучено.
речь ниочем
34 tutsi
 
06.06.20
18:55
(33) Простите!

Магазин ведёт учёт продаж и возвратов товара по складам и проектам.
В течение дня возникает необходимость проверить продажи в разрезе некоторых учетных единиц.
Учёт продаж ведётся документами Реализация и РеализацияРозница. Учёт возвратов с помощью документа ВозвратОтПокупателя.
Создайте отчёт, позволяющий учесть продажи по трём выборочным проектам (П1, П2, П3) с группировкой по складам, причём наименования и количество складов зависит от данных, введённых в пользовательском режиме. Результат отчета должен формироваться, с учётом корректирующей величины (Корректировка), вводимой через числовое поле на форме отчета, в таблице значений и выводиться в текстовое поле на форме отчета по следующей формуле.

Продажа П1+П2+Корректировка, Возврат П1+П2, Итог (Продажа П1+П2)-(Возврат П1+П2)+Корректировка
Продажа П3-Корректировка, Возврат П3, Итог (Продажа П3)-(Возврат П3)
Результат ((Продажа П1+П2)-(Возврат П1+П2)+(Продажа П3)-(Возврат П3)-Корректировка)
Наименование столбцов
Продажа первый этаж - для (Продажа П1+П2)
Возврат первый этаж - для (Возврат П1+П2)
Итого первый этаж - для (Итог (Продажа П1+П2)-(Возврат П1+П2))
Продажа второй этаж - для (Продажа П3)
Возврат второй этаж - для (Возврат П3)
Итого второй этаж - для (Итог (Продажа П3)-(Возврат П3))
Всего продаж - для (Результат ((Продажа П1+П2)-(Возврат П1+П2)+(Продажа П3)-(Возврат П3)))

Отчёт должен учитывать продажи только за текущий день, без возможности изменения периода на форме.
Сделайте кнопку, позволяющую обновлять результат в течение дня, без закрытия формы отчета.

Создайте такой же отчёт, с выводом данных в таблицу значений, расположенную на форме.

Создайте печатную форму отчета.
35 Ёпрст
 
06.06.20
20:09
(34) а че, есть еще собеседования с тестовыми заданиями на клюшках ?
36 Злопчинский
 
06.06.20
20:10
(35) не, это типа задание на учебе какой-то.
37 Злопчинский
 
06.06.20
20:10
суко, может где-то еще программують на ассембдлере ЕС ЭВМ?
38 Ёпрст
 
06.06.20
20:13
(36) 63 год выпуска, не поздновато учится то, при наличии внуков ?
;)
39 Злопчинский
 
06.06.20
20:17
(38) самое оно! дети и внуки уже на автономе, почему бы не заняться чем нибудь? я вот уже лет 10 собираюсь ипсанский поучить и танцевать...
40 tutsi
 
06.06.20
20:27
Преподу 65 лет недавно отметили.
На вопрос о том, зачем детям семерка, ответил, что учит по утверждённой программе, но планируется переход на восьмерку. И в следующем году, вроде как, будут изучать восьмерку.
Думаете стоит идти ругаться с директором? Или, все-таки, просто тупо выполнить это задание и забыть о нем?
41 Ёпрст
 
06.06.20
20:29
(40) так это не вам надо а дитятке ?
Дык пусть сам учит и делает..
42 tutsi
 
06.06.20
20:29
(35) Колледж это... мать его...
43 Ёпрст
 
06.06.20
20:30
Нас тоже учили на всяком г..когда оно давно не нужно было, правда, 1с тогда еще не было..
44 tutsi
 
06.06.20
20:31
(41) Так он сам и учится! Я помочь пытаюсь. Объяснить что к чему. Потому как во время пандемии и удаленного обучения знаний не прибавилось.
45 Злопчинский
 
06.06.20
20:33
я ща заплачу.. так и вижу себя лет через пять таким преподом.. на 7.7...
46 Ёпрст
 
06.06.20
20:35
(44) ну дык пусть заведет себе ник на мисте ивперёд, пару дней чтения и задавания глупых вопросов и можно идти, устраиваться на работу.
47 Ёпрст
 
06.06.20
20:35
не то, что отчеты писать..
48 Ёпрст
 
06.06.20
20:35
нам ливингстары нужны..
49 tutsi
 
06.06.20
20:36
(46) Передам ему ваш совет. 🤪
50 tutsi
 
06.06.20
20:39
(45) Пока вы в процессе подготовки, я уже третий месяц рыдаю!
Жалею, что не поддерживала уровень знаний.
51 tutsi
 
06.06.20
20:41
А если без шуток, то вот это вот всё, что нынче происходит, дало понять, насколько хуже, чем нас учили, учат сейчас наших детей.
52 Злопчинский
 
06.06.20
20:52
(51) нехай в блогеры запишется, не? лайки собирать или как там называется, не?
53 tutsi
 
06.06.20
21:00
(52) Интересно, своему ребёнку вы бы тоже такое предложили?
Мальчик, между прочим, хорошо учится. И самостоятельно.
Для меня шоком была ситуация с этим отчетом.
54 Злопчинский
 
06.06.20
21:02
(53) молодец, значит.
55 Злопчинский
 
06.06.20
21:11
(53) я на Кубани контакт дал, стучитесь в скайп если что...
56 tutsi
 
06.06.20
21:19
(55) Спасибо!
57 Злопчинский
 
06.06.20
22:14
стучаться лучше сейчас...
58 tutsi
 
07.06.20
10:21
(57) Все-таки я сторонник обучения, а не написания за ребёнка. Я ему даже ссылки сюда давать не хочу. А то будет пользоваться. Сама я ему просто объясняю суть действий. Да и самой полезно вспомнить. А то мозг от сидения дома слегка усыхает.
59 Злопчинский
 
07.06.20
15:27
ну так я ж не говорю и не планирую код писать, наоборот.. ;-)
60 tutsi
 
07.06.20
18:41
(59) Ещё раз огромное спасибо. Всё сделали. Завтра отнесёт ещё этот вариант. Посмотрим какой будет результат. Ну не верю я, что вся группа могла выполнить задание не правильно. Что-то там не так.