Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2011, 13:37   #1
xanderg
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 34
По умолчанию Ведомость подписчиков

Добрый день!
Прошу помочь мне разобраться с задачей:
есть БД, где хранятся реквизиты клиентов-компаний, счета и прочее.
есть БД2, где хранятся графики поставок изданий клиентам.
Необходимо сделать процедуру, начальным значение которой будет указан какой-то квартал и год, а результат будет иметь следующий вид:
по каждому из изданий будет показано, был ли клиент подписан на него в текущем квартале и сохранилась ли подписка в следующем квартале. Так по всем изданиям и клиентам.
Как осуществить такое?)
xanderg вне форума Ответить с цитированием
Старый 15.08.2011, 14:23   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) у Вас разные БД или разные таблицы в одной БД ?!
Это две "большие разницы"...

2) Если я понял правильно и БД2 - это не БД, а таблица, то нужна структура этой самой 2-й таблицы.

3) где храняться сами издания? (по хорошему это должна быть таблица 3, а таблица 2 отвечает за связь таблицы1 (клиентов) с изданиями (таблицей 3)

4) ищите решение на VBA? или одним запросом пытаетесь рулить?

ну и последнее, выкладывайте тестовую БД, чтобы можно было ответить предметно....


вообще, не вижу пока особых проблем...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.08.2011, 14:27   #3
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

На сколько я понял просто добавь связь с таблицой из базы 2 и сделай простой запрос на выборку..... Может выложи базу или попробуй уточнить что именно не получается.
gluk_fm вне форума Ответить с цитированием
Старый 15.08.2011, 14:34   #4
xanderg
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 34
По умолчанию

1) две разные БД.
в БД2 хранятся таблицы-графики поставок. попробую позже выложить тестовые базы или хотя бы опишу структуры нужных таблиц
xanderg вне форума Ответить с цитированием
Старый 18.08.2011, 15:58   #5
xanderg
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 34
По умолчанию

конкретные вопросы по реализации:

структура таблицы-графика следующая:

Доставка№
Счет№
Рег№ клиента
...
затем 53 логических поля(обозначают наличие или отсутствие поставки продукта на н-ной неделе)


для меня неясно следующее:

как обозначить на языке скл запроса период(ведь наличие галочки хотя бы в одном из полей относящихся к периоду означает подписку в периоде), как обозначить следующий период

и пока неясно, каким образом выводить результат: по идее должна быть самоформирующаяся таблица вида:

Клиент \/ издание1 \/ ... \/ издание н
1 0 0 1

где 1 0 означает что в рассматриваемом периоде подписка была, а в следующем нет. 0 1 наоборот (не было, а в следующем появилась).....


пока небольшая каша с тем, как это выполнить
xanderg вне форума Ответить с цитированием
Старый 18.08.2011, 21:23   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1. А где год? недели какого года задаются?!
А где собственно задаются "Издание1" "Издания2" - не увидел этого в структуре!

Цитата:
затем 53 логических поля(обозначают наличие или отсутствие поставки продукта на н-ной неделе)
с точки зрения нормальной структуры БД - это полная лажа.
Соответственно, и работать с этим средствами SQL чрезвычайно муторно. (но можно.. например написав 53 union'а )..

а возможно, лучшим способом будет не использовать SQL, а обрабатывать данные на клиенте: по заданному периоду получаете наименование поля с номером недели. Получаете следующее поле (нарастив номер недели на единичку).
Формируете запрос. Получаете результат...

p.s. Это Вам такой отчёт начально задало соорудить?!
Я бы на Вашем месте взял БД, перебил реальные данные счетов, клиентов, изданий (именно на "Клиент1", "Клиент2" и т.д. "Издание1", "Издание2"... ).
Подготовил шаблон отчёта (да и пример того, в каком виде нужен результат не помешал бы)... запаковал и выложил это всё сюда на форум. Уповая на то, что найдётся добрая душа и поможет Вам разгрести это..
Ну, не подумайте плохого, но можно и во Фриланс обратиться...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.08.2011, 23:24   #7
xanderg
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 34
По умолчанию

да, год указан полем в таблице-графике.
а издания - для каждого издания своя таблица графиков
ну это удобно для графического отображения, все карточки доставок выглядят одинаково, только для разных клиентов в разных местах стоят галочки
p.s. да( и проблема в том, что это нужно сделать не разово, а предоставить процедуру, по которой можно будет в любое время посмотреть данные. ввести квартал и увидеть результат
xanderg вне форума Ответить с цитированием
Старый 03.10.2011, 20:53   #8
denisbrain
Форумчанин
 
Регистрация: 29.05.2011
Сообщений: 449
По умолчанию

если актуально пиши каординаты ниже
задания на pascal/delphi ICQ 368254335
Tel +79177425326 mail denis-naymov1985(at)mail.ru login skype denis.new.skype
denisbrain вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа для накрутки подписчиков и мне нарвиться вконтакте,Написать на делфи iwanenko Работа с сетью в Delphi 1 30.06.2011 12:32
Работа с файлами. Ведомость Beren42 Помощь студентам 0 11.04.2011 14:38
Оборотная ведомость средствами SQL Dimych SQL, базы данных 11 03.09.2010 13:42
Экзаменационная ведомость (PHP) Light05 Помощь студентам 2 15.03.2010 06:53