Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: База данных для учета бланков

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Нужно для программы учета бланков
Angel_09
Отправлено: 14 Октября, 2015 - 16:44:15
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2014  


Помог: 0 раз(а)




Всем привет, дело в том что я очень долгое время не писал свое и к тому же я самоучка.
Так вот суть в том что на работе у меня попросили написать программу для учета страховых бланков.

В базе данных я собираюсь использовать 6 таблицы:
CODE (SQL):
скопировать код в буфер обмена
  1. бланки - страховые бланки, будет три столбца: серия (3 символа)| номер (10 символов) | дата.
  2.  
  3. квитанции - квитанции что выдаются вместе с бланками,  до момента выдачи клиенту они разделены. будет так же три столбца: серия (3 символа)| номер (6 символов) | дата.
  4.  
  5. выдача б- выданные бланки агентам. тут уже 4 столбца: серия (3 символа)| номер (10 символов) | агент | дата
  6.  
  7. выдача к- выданные квитанций агентам. тут уже 4 столбца: серия (3 символа)| номер (6 символов) | агент | дата
  8.  
  9. продажа - продажа бланков, вот с этого момента бланки и квитанции объединяются в целое, тут будет 8 столбцов: серия б (3 символа)| номер б (10 символов) | серия к (3 символа)| номер к (6 символов) | агент | Ф.И.О. | дата | стоимость.
  10.  
  11. агенты - от сюда будет браться информация об агентах. Тут у нас 5 столбцов: короткое имя | полные Ф.И.О. | Адрес офиса | номер телефона | примечания


Ну собственно говоря для меня здесь вся сложность в том что нужно реализовать выдачу.
Когда агенту будут выдавать бланк или квитанцию, нужно что-бы этот бланк илии квитанция удалялись с таблиц не выданных.
И тоже и самое с таблицей продажа - когда добавляешь бланк в проданные он должен удалиться из выданных.
как мне это реализовать в php? желательно поподробнее.
Очень прошу помочь.
Заранее спасибо

(Отредактировано автором: 14 Октября, 2015 - 16:46:07)

 
 Top
Мелкий Супермодератор
Отправлено: 14 Октября, 2015 - 17:09:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Для начала нормализуйте. Будет сразу проще работать.

Бланк от выданного бланка различается только id агента, у первых id агента ещё нет. Ну и сделайте поле по-умолчанию NULL. Если у бланка агент is null - его ещё никто не выдал.
Аналогично с квитанциями.
В таблице продажей бланков соответственно нормализуйте данные в первую очередь.

Это что можно по схеме сказать, в принципе ничего не зная о вашей предметной области.


-----
PostgreSQL DBA
 
 Top
Angel_09
Отправлено: 14 Октября, 2015 - 21:23:43
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2014  


Помог: 0 раз(а)




Мелкий пишет:
Для начала нормализуйте. Будет сразу проще работать.

Бланк от выданного бланка различается только id агента, у первых id агента ещё нет. Ну и сделайте поле по-умолчанию NULL. Если у бланка агент is null - его ещё никто не выдал.
Аналогично с квитанциями.
В таблице продажей бланков соответственно нормализуйте данные в первую очередь.

Это что можно по схеме сказать, в принципе ничего не зная о вашей предметной области.

от спасибо, а можно поподробнее
 
 Top
Angel_09
Отправлено: 17 Октября, 2015 - 02:36:15
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2014  


Помог: 0 раз(а)




Мелкий пишет:
Для начала нормализуйте. Будет сразу проще работать.

Бланк от выданного бланка различается только id агента, у первых id агента ещё нет. Ну и сделайте поле по-умолчанию NULL. Если у бланка агент is null - его ещё никто не выдал.
Аналогично с квитанциями.
В таблице продажей бланков соответственно нормализуйте данные в первую очередь.

Это что можно по схеме сказать, в принципе ничего не зная о вашей предметной области.


Немного помыслив я решил что по следующей таблице это будет реализовать легче:
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. --
  3. -- Структура таблицы `form`
  4. --
  5.  
  6. CREATE TABLE IF NOT EXISTS `form` (
  7.   `id` int(11) NOT NULL COMMENT 'ид бланка',
  8.   `seriesa` varchar(3) COLLATE utf8_unicode_ci NOT NULL COMMENT 'серия бланка',
  9.   `numbera` varchar(10) COLLATE utf8_unicode_ci NOT NULL COMMENT 'номер бланка',
  10.   `datea` date NOT NULL COMMENT 'дата бланка',
  11.   `seriesb` varchar(3) COLLATE utf8_unicode_ci NOT NULL COMMENT 'серия квитанции',
  12.   `numberb` varchar(6) COLLATE utf8_unicode_ci NOT NULL COMMENT 'номер квитанции',
  13.   `dateb` date NOT NULL COMMENT 'дата квитанции',
  14.   `agent` varchar(16) COLLATE utf8_unicode_ci NOT NULL COMMENT 'выдано агенту',
  15.   `datec` date NOT NULL COMMENT 'дата выдачи',
  16.   `name` varchar(100) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Ф.И.О. клиента',
  17.   `dated` date NOT NULL COMMENT 'дата продажи',
  18.   `price` varchar(7) COLLATE utf8_unicode_ci NOT NULL COMMENT 'цена',
  19.   `status` int(1) NOT NULL
  20. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='таблица учета бланков и квитанций';
  21.  


вопрос терь остается в том, как выставить бд и как реализовать зависимость от статуса

(Отредактировано автором: 17 Октября, 2015 - 02:37:50)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB