powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Как проще и лучше ?
8 сообщений из 8, страница 1 из 1
Как проще и лучше ?
    #32805255
Leonid_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть справочник товаров

Код: plaintext
1.
2.
3.
4.
GOODS
(
ID number,
Name varchar2( 200 )
);

Есть справочник магазинов

Код: plaintext
1.
2.
3.
4.
SHOPS
(
ID number,
Name varchar2( 200 )
)

Нужно организовать планирование закупок в каждый магазин, причем пользователи хотят видеть это в следующем виде:

Код: plaintext
ТОВАР | Магазин1 (кол-во) |  Магазин2 (кол-во) ... | МагазинN (кол-во)


DW, как я понимаю придется создавать динамически, так как кол-во магазинов заранее неизвестно. Вопрос в том как лучше организовать таблицу планирования закупок. Пока у меня 2 варианта:
1. Создать таблицу как
Forecast
(id number,
вн.ключ на GOODS,
вн.ключ на SHOPS,
quantity number
);

В этом случае данные в DW сложно сохранять
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805289
Leonid_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2. Второй вариант "неправильный" :)
Создать таблицу
(id number,
shop1_quantity number,
.
.
.
shopN_quantity number
)
При вставке данных в справочник магазинов - добавлять колонку к этой таблице, тогда реализация сохранения и формирования отчетов на порядок проще.

Что посоветуете? Наверняка есть еще подходы к подобным задачам
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805358
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интерфейс можно как угодно организовывать, в том числе и в виде кросстабов (хотя лично я тут кроме геммора ничего не вижу). А вот таблицы в БД должны всегда подчиняться нормализации, если не нужны проблемы. Так что второй вариант однозначно не годится, особенно если учесть, что планируется использование во время приложения DML команд для модификации таблицы, что противоречит всем законам разработки БД и здравого смысла в РСУБД. Поэтому необходимо сделать таблицу с полями:
Код: plaintext
1.
2.
КодТовара
КодМагазина
Колво
Касательно интерфейса рекомендую просто убедить пользователей, что такой интерфейс недопустим, что это не Excel и предложить им вариант DW, где для ввода данных используется группировка по товару:
ТоварМагазинКол-во<Молоко>Магазин 1100 Магазин 2 Магазин 3200Всего товара 300<Хлеб>Магазин 1 Магазин 215 Магазин 310Всего товара 25
Соотвествующе для ввода разрешить только поле "Кол-во", получать данные для такого DW необходимо примерно так:
Код: plaintext
1.
2.
3.
SELECT Товар, Магазин, Колво
FROM Товары тов
  CROSS JOIN Магазины маг
  LEFT JOIN Закупки зак ON зак.Товар = тов.Товар AND зак.Магазин = маг.Магазин
для записи изменений необходимо сделать соотвествующие хранимые процедуры и подцепить их в DW на Update Stored Procedure. Ну а дальше действовать в зависимости от особенностей своей РСУБД.
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805689
Leonid_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убеждение пользователей рулит :)
Спасибо в общем!
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805715
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid_BУбеждение пользователей рулит :)
А вот это уже политика. И если граммотно подойти к проблеме, поговорить с начальством пользователей на темы чего хотят пользователи - работать или красивые рюшечки смотреть, о сроках и стоимости выполнения заказа, о граммотности пользователей, об их отсталом видении интерфейса, в общем об чем угодно, но убедительно, то пользователи становятся мягкими и пушистыми. К каждому пользователю можно найти подход и компромисс в решении задач автоматизации, представления интерфейса и вопросам их обучения и работы, используя незатейливый метод кнута и пряника :)
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805762
gal20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid_B
Код: plaintext
ТОВАР | Магазин1 (кол-во) |  Магазин2 (кол-во) ... | МагазинN (кол-во)


Как насчет DW типа N-Up ? Ведь кол-во магазинов может быть и 3 и 43, так что кол-во колонок все равно придется как-то ограничивать, а N-Up стиль и колонки дает (заранее оговоренное кол-во) и редактирование допускает.
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32805991
Фотография PL99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то ASCRUS прав, пользователям волю давать нельзя :-), но вот ссылочка - можно попробовать принять за отправную точку.
...
Рейтинг: 0 / 0
Как проще и лучше ?
    #32828782
MoRRiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pivot table
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Как проще и лучше ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]