Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2011, 06:52   #1
serega1576
 
Регистрация: 11.06.2011
Сообщений: 6
Счастье Создание новой записи в подчиненной форме

Приветствую Вас программисты.
Помогите реализовать такое дело:
Имеется форма "Прием сотрудников" в данной форме имеется подчиненная "Приказы". Приказы имеют следующие поля: Код(Счетчик); №п-п(Текстовое); Дата(Дата); Содержание приказа(Текстовый).
Данные в поле "№п-п" следующего типа: *-л(где *- число: например 33-л) и */*-л(где *-число, например: 33/1-л)
Как сделать чтобы при создании нового приказа в подчиненную форму автоматически вставлялось следующий по порядку №п-п, и проверялось наличие дроби.(если дробь есть, то создание следующей записи будет основано на предшествующей записи). Предполагается что пользователь будет в ручную, если это необходимо, править поле №п-п, добавляя дробь с числом.
Заранее Спасибо!!!
Вложения
Тип файла: zip кадры.zip (140.2 Кб, 15 просмотров)
serega1576 вне форума Ответить с цитированием
Старый 15.09.2011, 10:54   #2
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

А какой кнопкой у Вас создаётся приказ?

Если я правильно понял, то в случае если это не новый сторудник, то просто надо добавлять после дроби число+1?
Поппробуйте уточнить задание.
С того что я понял:

1. проверялось наличие дроби.(если дробь есть, то создание следующей записи будет основано на предшествующей записи)

Функция iif(InStr(1;"№п-п";"/";0)>1;Значение;mid("№п-п";InStr(1;"№п-п";"/";0)+2;3)+1)
gluk_fm вне форума Ответить с цитированием
Старый 16.09.2011, 05:56   #3
serega1576
 
Регистрация: 11.06.2011
Сообщений: 6
Счастье

Создал кнопку. На нее поместил процедуру.

Private Sub btnNewPrikaz_Click()
Dim s, f, r, n, ns, p, i
Dim rst As ADODB.Recordset
Me.Приказы1.Form.Dirty = False
s = "select top 10 [№п-п] from Приказы order by val([№п-п]) desc"
i = 0
ns = 5
Set rst = CurrentProject.Connection.Execute(s )
Do While ns <> 0
f = rst.Fields(0)
rst.MoveNext
ns = InStr(1, f, "/")
Loop
n = InStr(1, f, "-")
r = Val(f) + 1
If r < 10 Then r = "0" & r
Me.Приказы1.Form.Recordset.AddNew
Me.Приказы1![№п-п] = r & "-л"
End Sub
Это полностью работает.
serega1576 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос в подчиненной форме Kvins Microsoft Office Access 1 30.09.2010 12:31
Поиск записи.Отображение данных в новой форме zaraz Microsoft Office Excel 4 16.06.2010 08:44
Ограничение на ввод данных в подчиненной форме. mnz2002 Microsoft Office Access 2 08.02.2010 19:17
Видимость полей в подчиненной форме Sparxy Microsoft Office Access 2 02.06.2009 21:40
Создание новой записи Gerox БД в Delphi 3 30.12.2007 14:22