Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Нумерация строк / 25 сообщений из 28, страница 1 из 2
30.03.2018, 11:52
    #39623161
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Здравствуйте!

Использую:ADO, SQL, Access. Помогите решить проблему.
В таблице есть поле NomerAkta:
01/18
02/18
03/18
и т. д.
(.../18 - это год, dm.ADOQueryNomerAkta.AsString+'/'+FormatDateTime('yy', now))

При ручном вводе номера акта, надо искать последний номер в таблице и вводить следующий номер.

Как сделать, чтобы при нажатии на кнопку номер акта увеличивался на+1 автоматически и
при смене года нумерация начиналась заново (01/18, 02/18, 03/18...... 01/19, 02/19, 03/19....)?????
...
Рейтинг: 0 / 0
30.03.2018, 11:55
    #39623163
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69,

А что, в Access счетчиков нет?
...
Рейтинг: 0 / 0
30.03.2018, 11:58
    #39623169
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69,

Если просто - SELECT MAX(NomerAkta) FROM ... . А если подумать - то тебе нужно внимательно почитать про бездырочную нумерацию документов - статьи в инете есть. И еще вопрос - NomerAkta у тебя хранимое поле или вычисляемое?
...
Рейтинг: 0 / 0
30.03.2018, 11:59
    #39623171
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Gerasimenkoalexxx69,

А что, в Access счетчиков нет?

Вопрос через месяц будет - "удалили документ, сбилась нумерация" :)
...
Рейтинг: 0 / 0
30.03.2018, 12:01
    #39623172
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Gerasimenko,
Есть, счетчик считает при добавлении новой строки, мне строку добавлять не надо, а поставить номер акта в имеющейся строке (она привязана к оборудованию) , а номера актов меняются
...
Рейтинг: 0 / 0
30.03.2018, 12:02
    #39623173
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster,
хранимое
...
Рейтинг: 0 / 0
30.03.2018, 12:05
    #39623178
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69Gerasimenko,
Есть, счетчик считает при добавлении новой строки, мне строку добавлять не надо, а поставить номер акта в имеющейся строке (она привязана к оборудованию) , а номера актов меняются
И как спасет твое
Код: sql
1.
SELECT MAX(NomerAkta) FROM 

при удалении не самого последнего документа?
Есть счетчик, и есть привязанный/не привязанный к конкретному состоянию счетчика документ. Все остальное: фантазии.
...
Рейтинг: 0 / 0
30.03.2018, 12:07
    #39623180
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMasteralexxx69,

Если просто - SELECT MAX(NomerAkta) FROM ... . А если подумать - то тебе нужно внимательно почитать про бездырочную нумерацию документов - статьи в инете есть. И еще вопрос - NomerAkta у тебя хранимое поле или вычисляемое?А если режим многопользовательский, то вааще ахтунг будет :)
...
Рейтинг: 0 / 0
30.03.2018, 12:20
    #39623196
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Gerasimenko,

В базе есть таблица "оборудование" - поля: год выпуска, год поступления, характеристики и т.д.

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

При следующей установки этого оборудования пишется новый акт ну и т.д.

база локальная
...
Рейтинг: 0 / 0
30.03.2018, 12:38
    #39623212
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69Gerasimenko,

В базе есть таблица "оборудование" - поля: год выпуска, год поступления, характеристики и т.д.

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

При следующей установки этого оборудования пишется новый акт ну и т.д.

база локальная
Делаешь отдельную таблицу: счетчик.
При смене года обнуляешь ее.
Собственно: все.
...
Рейтинг: 0 / 0
30.03.2018, 12:45
    #39623220
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Gerasimenko,

Мысль хорошая, а как при смене года обнулять??? Можно код?
...
Рейтинг: 0 / 0
30.03.2018, 12:46
    #39623223
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
Gerasimenko,

А я и не говорю, что SELECT MAX() хорошее решение :) Наоборот - толкаю ТС почитать статьи по его тематике.
...
Рейтинг: 0 / 0
30.03.2018, 12:52
    #39623232
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69Gerasimenko,

Мысль хорошая, а как при смене года обнулять??? Можно код?
Я не знаю, как это делается в Access, но в SQL можно сделать Truncate
...
Рейтинг: 0 / 0
30.03.2018, 12:53
    #39623233
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster,

номер акта не должен повторятся за год, оборудование сняли номер акта удалился,
оборудование ставится - присваивается новый номер акта (нумерация дырочная)
...
Рейтинг: 0 / 0
30.03.2018, 12:59
    #39623239
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster,
SELECT MAX() для локальной базы хорошее решение.

Вопрос в том как в коде написать автоматическое увеличение номера акта (+1) от последнего максимального, хранящегося в поле таблицы и в новом году начинать новую нумерацию
...
Рейтинг: 0 / 0
30.03.2018, 13:32
    #39623259
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69,

Если нумерация дырочная - то № акта у тебя будет равен значению счетчика. При смене года - старые данные отправляешь в таблицу-архив, оперативную таблицу чистишь и устанавливаешь счетчик обратно в 0. Собственно все...
...
Рейтинг: 0 / 0
30.03.2018, 14:21
    #39623300
alexer81
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
номер акта(NomerAkta) хранить в отдельном поле, год акта(GodAkt) в отдельном
SELECT MAX(NomerAkta) FROM ...
WHERE GodAkt=2018(текущий год)
получилось Null значит номер акта будет 1
иначе результат +1
...
Рейтинг: 0 / 0
30.03.2018, 14:48
    #39623328
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexer81,

Выше почитай. Если будет несколько пользователей, заводящих акты - будет возможность выдачи одного и того же номера разным актам, что плохо. Я изначально говорил, что SELECT MAX() - плохо.
...
Рейтинг: 0 / 0
30.03.2018, 16:22
    #39623432
alexer81
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster Если будет несколько пользователей, заводящих акты - будет возможность выдачи одного и того же номера разным актам, что плохо.
нужно формировать номер при сохранении записи, и не будет такой проблемы
...
Рейтинг: 0 / 0
30.03.2018, 17:00
    #39623473
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexer81,

Код покажи, как ты этот код формировать будешь. Для одновременной работы 100+ пользователей.
...
Рейтинг: 0 / 0
30.03.2018, 22:00
    #39623594
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster,

Выше написал, что база локальная, пользователей-1- это я, программу делаю для себя
...
Рейтинг: 0 / 0
30.03.2018, 22:09
    #39623598
alexxx69
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexer81,

дату использую системную и следовательно поле "год" не нужно.

Трудность с кодом ,
как прописать что с 01.01.2019, 01.01.2020, 01.01.2021 .....(системная дата) поле "номер акта" очищается и нумерация начинается с акта №1
...
Рейтинг: 0 / 0
31.03.2018, 00:41
    #39623611
bilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
DarkMaster,

Плохо даже если действие в одной транзакции? Я про MSSQL 2012
...
Рейтинг: 0 / 0
31.03.2018, 08:43
    #39623647
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
alexxx69,

авторТрудность с кодом ,
как прописать что - не как, а где
...
Рейтинг: 0 / 0
03.04.2018, 15:47
    #39624984
Валерий666
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нумерация строк
А если хранить счетчик в отдельной таблице(файле)?
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Нумерация строк / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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