
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
30.03.2018, 11:52
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Здравствуйте! Использую: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....)????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 11:55
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69, А что, в Access счетчиков нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 11:58
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69, Если просто - SELECT MAX(NomerAkta) FROM ... . А если подумать - то тебе нужно внимательно почитать про бездырочную нумерацию документов - статьи в инете есть. И еще вопрос - NomerAkta у тебя хранимое поле или вычисляемое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 11:59
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Gerasimenkoalexxx69, А что, в Access счетчиков нет? Вопрос через месяц будет - "удалили документ, сбилась нумерация" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:01
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Gerasimenko, Есть, счетчик считает при добавлении новой строки, мне строку добавлять не надо, а поставить номер акта в имеющейся строке (она привязана к оборудованию) , а номера актов меняются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:02
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMaster, хранимое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:05
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69Gerasimenko, Есть, счетчик считает при добавлении новой строки, мне строку добавлять не надо, а поставить номер акта в имеющейся строке (она привязана к оборудованию) , а номера актов меняются И как спасет твое Код: sql 1. при удалении не самого последнего документа? Есть счетчик, и есть привязанный/не привязанный к конкретному состоянию счетчика документ. Все остальное: фантазии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:07
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMasteralexxx69, Если просто - SELECT MAX(NomerAkta) FROM ... . А если подумать - то тебе нужно внимательно почитать про бездырочную нумерацию документов - статьи в инете есть. И еще вопрос - NomerAkta у тебя хранимое поле или вычисляемое?А если режим многопользовательский, то вааще ахтунг будет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:20
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Gerasimenko, В базе есть таблица "оборудование" - поля: год выпуска, год поступления, характеристики и т.д. Это оборудование ставится и снимается, при установке пишется акт, который распечатывается и в программе не хранится кроме номера акта и даты установки. При снятии оборудования номер акта и дата установки из программы удаляются. На каждое установленное оборудование пишется акт При следующей установки этого оборудования пишется новый акт ну и т.д. база локальная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:38
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69Gerasimenko, В базе есть таблица "оборудование" - поля: год выпуска, год поступления, характеристики и т.д. Это оборудование ставится и снимается, при установке пишется акт, который распечатывается и в программе не хранится кроме номера акта и даты установки. При снятии оборудования номер акта и дата установки из программы удаляются. На каждое установленное оборудование пишется акт При следующей установки этого оборудования пишется новый акт ну и т.д. база локальная Делаешь отдельную таблицу: счетчик. При смене года обнуляешь ее. Собственно: все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:45
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Gerasimenko, Мысль хорошая, а как при смене года обнулять??? Можно код? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:46
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
Gerasimenko, А я и не говорю, что SELECT MAX() хорошее решение :) Наоборот - толкаю ТС почитать статьи по его тематике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:52
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69Gerasimenko, Мысль хорошая, а как при смене года обнулять??? Можно код? Я не знаю, как это делается в Access, но в SQL можно сделать Truncate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:53
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMaster, номер акта не должен повторятся за год, оборудование сняли номер акта удалился, оборудование ставится - присваивается новый номер акта (нумерация дырочная) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 12:59
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMaster, SELECT MAX() для локальной базы хорошее решение. Вопрос в том как в коде написать автоматическое увеличение номера акта (+1) от последнего максимального, хранящегося в поле таблицы и в новом году начинать новую нумерацию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 13:32
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexxx69, Если нумерация дырочная - то № акта у тебя будет равен значению счетчика. При смене года - старые данные отправляешь в таблицу-архив, оперативную таблицу чистишь и устанавливаешь счетчик обратно в 0. Собственно все... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 14:21
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
номер акта(NomerAkta) хранить в отдельном поле, год акта(GodAkt) в отдельном SELECT MAX(NomerAkta) FROM ... WHERE GodAkt=2018(текущий год) получилось Null значит номер акта будет 1 иначе результат +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 14:48
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexer81, Выше почитай. Если будет несколько пользователей, заводящих акты - будет возможность выдачи одного и того же номера разным актам, что плохо. Я изначально говорил, что SELECT MAX() - плохо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 16:22
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMaster Если будет несколько пользователей, заводящих акты - будет возможность выдачи одного и того же номера разным актам, что плохо. нужно формировать номер при сохранении записи, и не будет такой проблемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 17:00
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexer81, Код покажи, как ты этот код формировать будешь. Для одновременной работы 100+ пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 22:00
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
DarkMaster, Выше написал, что база локальная, пользователей-1- это я, программу делаю для себя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.03.2018, 22:09
|
|||
|---|---|---|---|
|
|||
Нумерация строк |
|||
|
#18+
alexer81, дату использую системную и следовательно поле "год" не нужно. Трудность с кодом , как прописать что с 01.01.2019, 01.01.2020, 01.01.2021 .....(системная дата) поле "номер акта" очищается и нумерация начинается с акта №1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.03.2018, 00:41
|
|||
|---|---|---|---|
Нумерация строк |
|||
|
#18+
DarkMaster, Плохо даже если действие в одной транзакции? Я про MSSQL 2012 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.03.2018, 08:43
|
|||
|---|---|---|---|
Нумерация строк |
|||
|
#18+
alexxx69, авторТрудность с кодом , как прописать что - не как, а где ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&tablet=1&tid=2041050]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
7ms |
get forum data: |
4ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 488ms |

| 0 / 0 |
