|
График заказов в макете | ☑ | ||
---|---|---|---|---|
0
Триша
19.01.16
✎
12:53
|
Есть заказы покупателя (документ): Заказ1, Заказ2, Заказ3, Заказ4 и т.д. наеизвестно какое количество
Есть этапы производства (справочник): этап1, этап2, этап3, этап4, этап5 и т.д. фиксированное количество (из справочника, всего 6 этапов) Каждый этап для каждого заказа может выполняться несколько дней. Данные о этом хранятся в периодеческом регистре сведений (измерения: этап производства, заказ; ресурсы: датаНачала, ДатаОкончания) Нужно нарисовать макет: столбцы - календарные дни выбранного периода, строки сгруппированы по этапам производства, в каждой группе указываются заказы в те дни, в которые они будут производиться. Если заказ в одном этапе производится несколько дней, то все эти дни заказа должны быть нарисованы на одной строке. выбирала данные пакетным запросом. У меня получилось так: ---------------------------------------------------- день1 день2 день3 день4 день5 ---------------------------------------------------- Этап1 заказ1 заказ2 заказ2 заказ3 заказ3 заказ3 заказ4 заказ5 заказ6 ---------------------------------------------------- Этап2 заказ2 заказ3 заказ4 заказ5 заказ5 заказ6 заказ6 заказ7 ---------------------------------------------------- А надо так: ---------------------------------------------------- день1 день2 день3 день4 день5 ---------------------------------------------------- Этап1 заказ1 заказ2 заказ2 заказ5 заказ3 заказ3 заказ3 заказ6 заказ4 ---------------------------------------------------- Этап2 заказ2 заказ5 заказ5 заказ7 заказ3 заказ4 заказ6 заказ6 ---------------------------------------------------- Уважаемые форумчане! Если кто-то сталкивался с подобной задачей, направьте, в каком направлении копать. 8 вариантов уже сделала, но все не учитывают все разнообразные варианты расположения заказов. |
|||
1
Garykom
гуру
19.01.16
✎
13:00
|
(0) по вашим "получилось/нужно" ничего не понятно, картинки/скриншоты на любой хостинг картинок и ссылки сюда
|
|||
2
Триша
19.01.16
✎
14:13
|
(1) Да, ерунда получилась.
Вот здесь картинки: https://cloud.mail.ru/public/2Xne/3J7KFME4L |
|||
3
Триша
19.01.16
✎
15:23
|
up
|
|||
4
Cyberhawk
19.01.16
✎
15:31
|
Надо было структуру регистра продумывать лучше (под удобство выбирания данных в нужном виже), теперь, собственно, только правь способ выбирания данных
|
|||
5
Триша
19.01.16
✎
15:36
|
(4) Регистр был сделан задолго до этой задачи. Вот я и прошу совета, каким образом можно так выбрать данные, как требуется в задаче
|
|||
6
Cyberhawk
19.01.16
✎
15:39
|
Ну, например, используя левое соединение таблиц
|
|||
7
Триша
19.01.16
✎
15:51
|
(6) Пример можно?
Я уже сделала 8 различных вариантов с пакетными запросами с левыми и не только соединениями, нумеровала заказы различными способами, но пока не могу получить нужный вариант. |
|||
8
Garykom
гуру
19.01.16
✎
19:18
|
(2) это проще кодом без всяких запросов на ТЗ сделать
запросом только исходные данные получайте из регистра еще можно СКД помучать )) но тормозно очень будет |
|||
9
Cyberhawk
19.01.16
✎
19:31
|
(7) Дашь RDP-доступ к базе или саму базу с данными (размер - не больше 100 Мб) - поиграюсь, а так набивать данные для запроса - лениво
|
|||
10
Триша
20.01.16
✎
10:59
|
(2) с обработкой ТЗ кодом очень долго и тоже не просто
(9) не дам, я там новый человек, предприятие серьезное, базы свои всем подряд не дает, строгая политика безопасности. |
|||
11
Garykom
гуру
20.01.16
✎
11:02
|
(10) ну если знание работы с ТЗ на том же уровне что и знания запросов то да ;)
просто не вижу никаких проблем данные простейше/тупейше по очереди для каждой ячейки перебором ТЗ получать и присоединять... |
|||
12
Триша
20.01.16
✎
12:54
|
(11) Вам, конечно, лучше знать, какие у меня знания, особенно по сравнению с собственными.
Если бы данные были "простейшие/тупейшие", сейчас здесь было бы полно вариантов предложено. Данные на самом деле гораздо сложнее приведенного примера. Кроме того есть сложности. Нужно, если заказ выполняется на одном этапе несколько дней, чтобы все ячейки с этим заказом в разных датах были на одной строке. А пустые места заполнялись другими заказами. Простым перебором не получиться. |
|||
13
Garykom
гуру
20.01.16
✎
12:58
|
(12) ыыы, могу поспорить что при таком ТЗ (дописываемом на ходу) запросами точно легко и быстро не сделать
а если еще какое нибудь хотение добавить то и не выйдет запросами вообще |
|||
14
Garykom
гуру
20.01.16
✎
13:00
|
и да предложил уже (9) добрый товарищ вам помочь
раз rdp низзя то сделайте тестовую базу с данными и выложите |
|||
15
Триша
20.01.16
✎
15:05
|
(14) Как вы говорите "хотение" не я придумываю, я мне такое задание дают. Я же написала в теме: "Если кто-то сталкивался с подобной задачей, направьте, в каком направлении копать". Ну, а если не сталкивались, то значит, нечем помочь, что ж, ладно, с нуля я и сама могу что-нибудь придумать, только не быстро...
доброму товарищу спасибо )) У меня уже есть рабочий вариант, помимо того, который делает так, как на 1 рисунке (1 заказ = 1 строка в макете). Пакет из 25 запросов. Только он тоже не все пустые места оптимизирует. Время работы пакетного запроса в разы меньше времени вывода макета. Долго выводится макет, соответственно, чем меньше строк выводится, тем меньше времени занимает перерисовка макета, и задача эта для того, чтобы сократить количество строк в результате. |
|||
16
Garykom
гуру
20.01.16
✎
15:27
|
(15) "Время работы пакетного запроса в разы меньше времени вывода макета" - WTF?
+ "Пакет из 25 запросов" - и это вместо 10-20 строчек кода с ТЗ ? |
|||
17
Garykom
гуру
20.01.16
✎
15:29
|
(16)+ блин только фикси может сидеть и днями, неделями и т.д. решать простейшую задачу
у спецов нет столько времени, они готовы столько времени только на обучение чему то потратить а не на решение задачи понимаете что время человека (особенно спеца) в разы дороже времени машины (компьютера/сервера) если задачу можно быстро решить (время разработки) так что потом она долго будет решаться (вычислениями на компе) то это превосходное решение с точки зрения затрат? |
|||
18
Триша
20.01.16
✎
15:43
|
(17) 25 запросов, что вас шокирует? В типовой УПП отчет УФ Т13, например, содержит пакет из 22 запросов.
ТЗ сама по себе ниоткуда не появляется. Ее тоже запросами надо формировать. Разница в выполнении запроса с отсеканием лишних строк и без отсекания несущественная. А вот обработка ТЗ циклами в процессе вывода макета занимает очень много времени. Завидуете фикси? |
|||
19
Garykom
гуру
20.01.16
✎
15:53
|
(18) не завидую, сам такой + фриланс
но сидя на фикси я новому обучаюсь (всегда так делал) или фигней страдаю (вплоть до болтовни на форумах или повышения собственного культурного уровня) а не пытаясь микроскопом гвоздь забить |
|||
20
Триша
20.01.16
✎
16:42
|
(18) Оу, это все объясняет! ))
Ок, когда появиться свободное время, сделаю еще вариант с обработкой ТЗ и сравню производительность. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |