Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266

Добавление ячеек по количеству выбранных дней в эдите

26.02.2014, 18:19. Показов 801. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток, помогите осуществить задачу, в прикрепленном исходнике во 2 форме при выборе числа дней нужно чтоб в 3 форме выходило аналогичное количество ячеек ну естественно со солбцом нумерации и фио
Вложения
Тип файла: rar проба создания.rar (2.87 Мб, 27 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.02.2014, 18:19
Ответы с готовыми решениями:

Добавление N ячеек в отчет, где N = кол-ву дней в месяце
Здравия желаю! Необходимо сделать отчет такого вида. Ну, почти такого. Это первоначальный вариант от "заказчика". Ему нужна...

Обращение к количеству дней в месяце
Добрый день, нужно сделать подобие Exсel-ливского автозаполнения. Есть какой-нибудь способ обращения к календарю и узнать сколько дней в...

Удаление выбранных значений ячеек
Здравствуйте. Помогите написать код для кнопки "Ввести данные" на листе "Праздники". Суть в том, что пользователь должен ввести...

15
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
27.02.2014, 04:14
nastena_r_v, вот честно хочется вас отправить читать теорию реляционных БД. Главы о нормализации БД.
И тогда может быть многие вещи не станут казаться такими сложными.
Цитата Сообщение от nastena_r_v Посмотреть сообщение
2 форме при выборе числа дней нужно чтоб в 3 форме выходило аналогичное количество ячеек
Как это должно выглядеть? ...можно в Excel нарисовать...
0
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
27.02.2014, 10:13  [ТС]
Ну т.е. чтоб через дб грид отображалось нужное количество ячеек, база аксесс.
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
27.02.2014, 10:25
Цитата Сообщение от rdama Посмотреть сообщение
Как это должно выглядеть?
...
0
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
27.02.2014, 10:37  [ТС]
как должно выглядеть? ну если в наглядном плане, то без разницы, лишь бы выводилось конкретное количество ячеек по запросу пользователя, а если в плане кода, то тут тоже привилегий нет, мне важна сама суть написания, разобраться как можно это реализовать.
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
27.02.2014, 10:49
nastena_r_v, нарисуйте d excel что вы хотите получить...
Вас абсолютно не понятно...мой телепатор ламается об ваши попытки описать желаемое...
0
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
04.03.2014, 08:38  [ТС]
rdama, выкладываю скрины с описанием, надеюсь ты меня поймешь =)
Миниатюры
Добавление ячеек по количеству выбранных дней в эдите   Добавление ячеек по количеству выбранных дней в эдите  
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
04.03.2014, 09:12
Тюе вы хотите создавать таблицу в БД исходя из того сколько полей у вас попросит пользователь?
Я правильно понимаю?
0
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
04.03.2014, 09:15  [ТС]
Да.... ну наконец-то, свершилось. ))) такое реально вообще??? я создавала только через sql запрос, а так как сделать я не знаю.
помощи мне ждать не откуда, поэтому если этот вопрос покажется странным, воспримите его нормально, я сама пытаюсь учиться =)
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
04.03.2014, 09:35
Ну смысл весь в том, что так делать крайне не верно.
Так как это противоречит теории реляционных БД.
Вам нужно данные хранить в виде строк в любом случае.
А для отображения смотреть в сторону транспонирования.
0
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
04.03.2014, 09:37  [ТС]
Вообще мне надо сделать программу для учета рабочих смен, как думаете, тогда лучше будет сделать сразу 31 ячейку и не мучаться?
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
04.03.2014, 09:53
Я так понимаю режим работы?
Причем так как вы учитывать собираетесь смены, в смене есть ночные часы, а есть дневные...
У вас учет смен оторван от расчета з/п? А то они как бы по разному считаются...
Далее у вас же наверно смены переходные? Т.е. не в разрезе одного дня, а в разрезе 2 дней...
Или у вас человек заступает в смену в 0 часов и до 0 следующих суток?
Как в вами предложенной схеме вы это собираетесь учитывать?

Это то что я предлагаю...
Я еще раз говорю строки и транспонирование.
Ваша таблица со строками выглядеть будет следующим образом.

| id_сотрудника | год | день | количество часов день | количество часов ночь |

Т.е в данном случае у вас будет не одно поле с часами, а 2 (дневные/ночные).
1
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
04.03.2014, 10:02  [ТС]
Ну допустим это будет так (зарплату не надо трогать). А как тогда это все должно будет поместиться в 31 день???????
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
04.03.2014, 10:38
Допустим смена с 8 до 8 сл дня.
У вас смена сколько часов?
Например для 22 часовой
Кстати я забыл месяц.
Но можно вообще использовать дату.
| id_сотрудника | год | месяц | день | количество часов день | количество часов ночь |
| 500 | 2014 | 01 | 01 | 12 | 2 |
| 500 | 2014 | 01 | 02 | 2 | 6 |

Если сделать с датой, то
| id_сотрудника | Дата | количество часов день | количество часов ночь |
| 500 | 2014 - 01 - 01 | 12 | 2 |
| 500 | 2014 - 01 - 02 | 2 | 6 |

Можно конечно сделать одно поле с часами и указать тип часов как справочник т.к. у нас еще бывает сверурочка...

Тогда все выглядит так
| id_сотрудника | Дата | количество часов| тип часов |
| 500 | 2014 - 01 - 01 | 12 | 1 |
| 500 | 2014 - 01 - 02 | 8 | 2 |
| 500 | 2014 - 01 - 02 | 2 | 1 |

Мне милее 3 вариант...
Тип часов это справочник
Но это если мы уже говорим о табеле и табельном учете...
| тип | наименование | Код согласно Т-13 |
| 1 | Дневные | Я |
| 2 | Ночные | Н |
| 3 | Сверхурочные| С |
| 4 | Празднечные | РВ |

А потом транспонированием переварачивать таблицу и отображать как привыкли видеть...
1
 Аватар для nastena_r_v
47 / 47 / 1
Регистрация: 03.05.2012
Сообщений: 266
04.03.2014, 10:53  [ТС]
т.е. Вы предлагаете делать учет смен по каждому дню? Конечно это все облегчает, но... смены на сколько я знаю, нужны только дневные,ночных нет и... в конце месяца надо подвести итог с общим количеством смен на работника, ну вычесляемые поля сделать.
Я попробовала сделать 31 день через запорс CREATE, но выдает ошибку - "String too long at line 66"
Т.е. сама строка в длину длинная ))) а уменьшить не могу, потому что мне нужен 31 день.

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.Button3Click(Sender: TObject);
begin
  if not (Edit1.Text = '') then
    begin
      if ComboBox1.Items.IndexOf(Edit1.Text) = -1 then
        begin
          DataModule2.ADOQuery1.SQL.Clear;
DataModule2.ADOQuery1.SQL.Add('CREATE TABLE '+ Edit1.Text + [COLOR="Red"]'([№] Counter, [ФИО] String(50),[id1] int,[id2] int,[id3] int,[id4] int,[id5] int,[id6] int,[id7] int,[id8] int,[id9] int, [id10] int,[id11] int,[id12] int,[id13] int,[id14] int,[id15] int,[id16] int,[id17] int,[id18] int,[id19] int,[id20] int,[id21] int,[id22] int,[id23] int,[id24] int,[id25] int,[id26] int,[id27] int,[id28] int,[id29] int,[id30] int,[id31] int, [idx] float,[idy] float,PRIMARY KEY ([№]))');[/COLOR]
          DataModule2.ADOQuery1.ExecSQL;
          DataModule2.ADOConnection1.GetTableNames(ComboBox1.Items);
          ComboBox1.ItemIndex := ComboBox1.Items.IndexOf(Edit1.Text);
          Form3.ShowModal;
        end
      else ShowMessage('База уже существует');
    end
  else ShowMessage('Имя базы не задано');
end;
Гляньте процедуру на кнопку. Это кнопка "Создание"
Может есть предложение, как все-таки сделать чтоб хотя бы просто выходило 33 ячейки вместе с № и ФИО.
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
06.03.2014, 03:22
Можно разбить ваш запрос на несколько строк малой длины и использовать
Delphi
1
2
3
4
DataModule2.ADOQuery1.SQL.Add('String1');
DataModule2.ADOQuery1.SQL.Add('String2');
DataModule2.ADOQuery1.SQL.Add('String3');
DataModule2.ADOQuery1.SQL.Add('String4');
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.03.2014, 03:22
Помогаю со студенческими работами здесь

Заполнение выбранных ячеек таблицы
Здравствуйте. Есть входной параметр - двумерный ассоциативный массив $mas = array(array( 'cells' => '1,2,4,5')); в котором...

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

Получить даты всех выбранных дней в Month Calendar
Подскажите пожалуйста, у меня на форме есть элемент month calendar, при выделении на нем нескольких дней мышью - происходит событие, вот в...

Калькулятор суммы выбранных ячеек из таблицы
Подскажите, пожалуйста! В таблице есть строки по три ячейки, в одной из них — сумма. Как сделать «калькулятор», который бы...

по заданному количеству дней определить день недели
по заданному количеству дней определить день недели, если 1.01 - среда (Pascal и схему алгоритма)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru