вопрос-создание выпадающего списка и соответствующих ему данных

Автор laborant, 11 апреля 2016, 09:06

0 Пользователи и 1 гость просматривают эту тему.

laborant

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

имеем следующее на работе- каждый день списывается спирт на анализы препаратов, ведется журнал учета. если не брать во внимание всякие мелочи то суть проста-приход к началу дня , расход за день по препаратам(у каждого своя норма) , возможный приход за день и остаток на конец дня. часть людей пишет по старинке ручкой и с помощью калькулятора (имеем множество сбоев), другая часть пользуется open office Calc (к сожалению образцов прикрепить не могу-на работе автономная сеть и блокировка пересылки файлов) той или иной степени неудобности. но по сути там построен выпадающий список с названиями препаратов и в зависимости от появившегося названия появляется норма расхода и начинаются подсчеты.

теперь сам вопрос-возможно ли создать базу данных в Base, чтобы в заполняемой таблице была графа "препараты" с выпадающим списком (на форуме я уже увидел образцы как это сделать), следующая колонка "норма" заполнялась автоматически в зависимости от колонки "препараты" (тут я как понимаю нужна отдельная таблица с препаратами и нормами где эти  данные были прописаны, но как связать ее чтобы работала такая схема?), а в следующих колонках можно было бы прописывать даты, смены и производить расчет остатка за смену! (тут по моим куцым догадкам нужно скорее всего делать запрос ). вобщем возможно ли создать такую базу ? есть ли смысл ее создавать или продолжить работать в Calc?

maksvlad

#1
Две таблицы:
1. Препарат/норма
2. День/смена /препарат
Связи, собственно, по полю препарат.
Результат - отчёт с суммой
Вывод. Базу сделать можно. В части смысла её делать - вопрос философский...

JohnSUN

Цитата: maksvlad от 12 апреля 2016, 16:52
В части смысла её делать - вопрос философский...
Браво, maksvlad! Шикарная формулировка: дипломатичная и ёмкая. Полностью поддерживаю! Всё, что касается изменения уже устаканенного учёта расхода спирта - очччень философский вопрос. Я бы от решения такой задачи отбрыкивался бы руками и ногами - зачем мне столько врагов сразу?
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

laborant

спасибо что ответили:) но у меня тут загвоздка-не получается сделать так чтобы в ответ на выбор в списке менялось поле "норма", то есть список выпадающий удается создать а вот поле "норма" приходится вручную прописывать что делает БД бессмысленной. возможно ли сделать так чтобы при выборе в списке в поле "препарат" одновременно менялось бы значение в поле "норма" в соответствии с "препаратом"?

laborant

Цитата: JohnSUN от 13 апреля 2016, 07:19Я бы от решения такой задачи отбрыкивался бы руками и ногами
день добрый!нехватка "рабочих рук" при растущих обьемах работы требует автоматизации документации, а бухгалтерия уже стала принимать  отчеты в Calc :)распечатанные разумеется

JohnSUN

Ладно, давай уточним задачу.
Цитата: laborant от 11 апреля 2016, 09:06
...ведется журнал учета. если не брать во внимание всякие мелочи то суть проста-приход к началу дня , расход за день по препаратам(у каждого своя норма)
Форма Журнала учёта - не мелочь: это "спецификация выходного документа", одна из основных частей технического задания.
Так что, будь добр, короткий образец заполненного Журнала всё-таки покажи.
Цитата: laborant от 11 апреля 2016, 09:06по сути там построен выпадающий список с названиями препаратов и в зависимости от появившегося названия появляется норма расхода и начинаются подсчеты.
Давай сразу договоримся - база данных не будет делать никаких подсчётов, пока не получит команду "выведи отчёт (Журнал)".
В отличие от Calc'а, который все расчёты делает на лету (ввёл/выбрал из списка и получил изменившуюся сумму),  база данных работает иначе: ввёл-запомнила, ввёл-запомнила, ввёл-запомнила, ввёл-запомнила, нажал кнопку - просуммировала и вывела.
А раз так, то и немедленное отображение "нормы" тебе не нужно. Разве что для удобства пользователя. Но, уверяю тебя, чаще всего пользователю лишние цифры перед глазами только мешают.
Цитата: laborant от 11 апреля 2016, 09:06
тут я как понимаю нужна отдельная таблица с препаратами и нормами где эти  данные были прописаны
Да, нужна. И если ты её покажешь хотя бы в обрезанном виде, разговор пойдёт легче. Мы, конечно, могли бы и сами нарисовать что-то вроде "Протирка оптических осей (1 шт) - 50 грамм; Протирка оптических осей (2 шт) - 150 грамм; Протирка оптических осей начальника лаборатории (1 шт) - 500 грамм и огурец"... Но лучше видеть реальные названия (просто чтобы знать, какой длины поле должно быть для его хранения) и нормы расхода (опять-таки, чтобы правильно описать поле в таблице - сколько там знаков после запятой нужно?)
Цитата: laborant от 11 апреля 2016, 09:06
но как связать ее чтобы работала такая схема?
Эта "схема" должна будет срабатывать только при выводе отчёта: специальный оператор выбора данных из таблиц базы (SELECT) будет отбирать записи за определённый период - день, неделя, декада, месяц, год - и увязывать имеющиеся записи о расходе со значениями из таблицы-справочника норм. В операторе SELECT предусмотрено несколько способов объединения данных из разных таблиц - тут и "левое объединение", и "отбор по условию", и еще несколько разных приёмов.
Цитата: laborant от 11 апреля 2016, 09:06
на работе автономная сеть и блокировка пересылки файлов. вобщем возможно ли создать такую базу ?
Есть ли в этой сети выделенный сервер? Ну, отдельный компьютер, который собирал бы отчеты об анализах с рабочих мест воедино. Дело в том, что возможны два варианта решения - единая база данных, развёрнутая на сервере, и куча Base-приложений для связи с ней с рабочих мест, или - куча автономных Base-приложений на рабочих местах, каждое из которых ведёт учёт расхода только для этого места. И тогда бухгалтерия все-равно будет получать кучу отчетов, которые нужно будет как-то объединять. Да, во втором случае все отчеты будут хотя бы в единой форме и, возможно, не в бумажном, а все-таки в электронном виде. Но это решение промежуточное, компромиссное. И полностью проблему отчетности не решит.
Цитата: laborant от 11 апреля 2016, 09:06
есть ли смысл ее создавать или продолжить работать в Calc?
Ну, мы с maksvlad'ом же и намекаем - даже если ты не решишь эту задачу, а только приступишь к её выполнению, то сразу же обзаведёшься целой толпой явных и скрытых недоброжелателей... Так что тут уж тебе решать, готов ли ты к такому подвигу.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

laborant

громадное спасибо!очень внимательно прочитал!для себя вопрос прояснил- с точки зрения создания и работы для многих наших пользователей разного уровня все таки надежнее и проще пользоваться Calc.да, центральные есть, есть и некоторые базы данных общего учета которые разработаны нашим вычислительным центром, но по ряду вопросов (как этот) возникают запары-программистам или некогда(их тоже негусто по количеству работников) или они не могут понять с точки зрения пользователя что нужно сделать в базе, а пользователи понимают но страшно далеки от возможности сделать:))
вобщем еще раз спасибо!буду изучать теперь еще и раздел "Calc" :)