Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Записать в таблицу несколько пятниц от определенной даты. / 25 сообщений из 29, страница 1 из 2
05.08.2019, 15:59
    #39845449
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
Приветствую всех! Помогите составить код. Мне надо записать в таблицу Payments в поле DataP даты 30-ти пятниц, которые наступят последовательно после даты, которую я записываю в первую строку в поле DataP.
...
Рейтинг: 0 / 0
05.08.2019, 16:53
    #39845464
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
Сделай таблицу с числами от 1 до 30. Добавь её в источник запроса и прибавляй к дате их, умножив на 7. Чтобы получить пятницу - отними от даты номер её дня недели и прибавь... ну там сам посчитаешь сколько.
...
Рейтинг: 0 / 0
05.08.2019, 19:06
    #39845551
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
как вариант:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Private Sub Form_Current()
Dim a, myweek
myweek = Weekday(Me.myDate)
Select Case myweek
Case 1
a = 5
Case 2
a = 4
Case 3
a = 3
Case 4
a = 2
Case 5
a = 1
Case 6
a = 0
Case 7
a = 6
End Select
Me.Friday30 = Me.myDate + a + (7 * 29)
End Sub
...
Рейтинг: 0 / 0
05.08.2019, 19:26
    #39845557
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr...Мне надо записать в таблицу Payments в поле DataP даты 30-ти пятниц, которые наступят последовательно после даты, которую я записываю в первую строку в поле DataP.В таблицу это не записывают. Писать в табл.дату отстоящую от уже внесенной на 30 пятниц(тем более перебрать все 30 значений) есть излишествующие данные (Они всегда вычисляются или процедурой или функцией.Записывать в поле тридцать значений это уж слишком-Считаю что даже 2 много)
Совершенно другой смысл-добавить в тбл. 30 записей с датами,но не зная логики работы и решаемые БД задачи сказать что-то определенное невозможно
...
Рейтинг: 0 / 0
05.08.2019, 20:10
    #39845580
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
Akina, спасибо за идею, что-то получается.
...
Рейтинг: 0 / 0
05.08.2019, 20:11
    #39845581
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr...Мне надо записать в таблицу Payments в поле DataP даты 30-ти пятниц, которые наступят последовательно после даты, которую я записываю в первую строку в поле DataP.В таблицу это не записывают. Писать в табл.дату отстоящую от уже внесенной на 30 пятниц(тем более перебрать все 30 значений) есть излишествующие данные (Они всегда вычисляются или процедурой или функцией.Записывать в поле тридцать значений это уж слишком-Считаю что даже 2 много)
Совершенно другой смысл-добавить в тбл. 30 записей с датами,но не зная логики работы и решаемые БД задачи сказать что-то определенное невозможно
Да, добавить 30 записей с датами пятниц.
...
Рейтинг: 0 / 0
05.08.2019, 20:57
    #39845598
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr,
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Private Sub cmb_Click()
Dim a, myweek, rs As Recordset, myFriday, i
Set rs = CurrentDb.OpenRecordset("tbl")
myweek = Weekday(Me.myDate)
Select Case myweek
Case 1
a = 5
Case 2
a = 4
Case 3
a = 3
Case 4
a = 2
Case 5
a = 1
Case 6
a = 0
Case 7
a = 6
End Select
'case можно заменить:If myweek<7 then a=6-myweek else a=6
myFriday= (Me.myDate) + a
For i = 0 To 29 'можно без рекордсета использовать запрос на добавление:CurrentDB.Execut...
rs.AddNew
rs!myDate = myFriday
myFriday= myFriday+ 7
rs.Update
Next
End Sub
...
Рейтинг: 0 / 0
07.08.2019, 13:49
    #39846342
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr,
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Private Sub cmb_Click()
Dim a, myweek, rs As Recordset, myFriday, i
Set rs = CurrentDb.OpenRecordset("tbl")
myweek = Weekday(Me.myDate)
Select Case myweek
Case 1
a = 5
Case 2
a = 4
Case 3
a = 3
Case 4
a = 2
Case 5
a = 1
Case 6
a = 0
Case 7
a = 6
End Select
'case можно заменить:If myweek<7 then a=6-myweek else a=6
myFriday= (Me.myDate) + a
For i = 0 To 29 'можно без рекордсета использовать запрос на добавление:CurrentDB.Execut...
rs.AddNew
rs!myDate = myFriday
myFriday= myFriday+ 7
rs.Update
Next
End Sub


Спасибо! Работает хорошо.
А если нужно не добавить, а записать в существующие записи таблицы 30 пятниц? Вы писали, что можно с помощью функции это сделать. Можно подробнее?
...
Рейтинг: 0 / 0
07.08.2019, 15:06
    #39846401
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrrА если нужно не добавить, а записать в существующие записи таблицы 30 пятниц? Вы писали, что можно с помощью функции это сделать. Можно подробнее?Для этого нужно знать в какие записи (критерий) и от какой даты считать
...
Рейтинг: 0 / 0
07.08.2019, 15:29
    #39846425
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
Вдогонку:а про подчиненную таблицу не думали?
...
Рейтинг: 0 / 0
07.08.2019, 16:03
    #39846460
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrrА если нужно не добавить, а записать в существующие записи таблицы 30 пятниц? Вы писали, что можно с помощью функции это сделать. Можно подробнее?Для этого нужно знать в какие записи (критерий) и от какой даты считать
Что бы конкретизировать задачу прикрепляю бд.
Нужно при нажатии кнопки Funded записать в поле Date_scheduled первой записи текущую дату, а в последущие записи в это поле записать даты 30-ти пятниц после текущей даты.
...
Рейтинг: 0 / 0
07.08.2019, 19:20
    #39846609
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr,
посмотрите-так?
...
Рейтинг: 0 / 0
07.08.2019, 19:30
    #39846616
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
вдогонку:имейте ввиду-округление сделано не корректно (сумма оплат не совпадет с занесенной на главной форме)
...
Рейтинг: 0 / 0
07.08.2019, 21:04
    #39846639
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr,
посмотрите-так?
К сожалению, нет.
Суммы оплат ставятся в таблицу раньше, чем даты "пятниц". Т.е. оплаты уже стоят и надо в эти записи вставить даты пятниц. Можно не 30, а по количеству оплат. Оплаты все разные и могут быть не равны друг другу. Будем считать, что они ставятся вручную.
...
Рейтинг: 0 / 0
07.08.2019, 22:29
    #39846655
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr,
чё-то не понял я логику:если оплата(взнос) состоялся в среду почему нужно ставить дату(заведомо ложную-пятницу) о проведении оплаты.Может просто подсчитывать сумму взносов и остаток на данную(или любую) дату и иметь историю оплат
...
Рейтинг: 0 / 0
07.08.2019, 22:34
    #39846658
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
и посмотрите внимательно:поле взнос это график платежей(план),а поле факт это фактическая оплата,можно добавить поле фактДата и заполнять вручную(а как иначе?)
...
Рейтинг: 0 / 0
07.08.2019, 23:18
    #39846679
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr,
чё-то не понял я логику:если оплата(взнос) состоялся в среду почему нужно ставить дату(заведомо ложную-пятницу) о проведении оплаты.Может просто подсчитывать сумму взносов и остаток на данную(или любую) дату и иметь историю оплат
Это формирование плана-графика оплат. Сначала формируются суммы и количество оплат. Они вносятся в таблицу. Потом вставляются даты. Первая дата - текущая, остальные даты - пятницы. Я в примере бд смоделировал ситуацию, добавлять и менять там ничего не надо. Исходная позиция на рис1., результат работы функции или процедуры на рис2.
...
Рейтинг: 0 / 0
07.08.2019, 23:18
    #39846680
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
рис2.
...
Рейтинг: 0 / 0
07.08.2019, 23:20
    #39846681
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
07.08.2019 это дата текущая, затем записываем даты пятниц по неделям.
...
Рейтинг: 0 / 0
08.08.2019, 02:34
    #39846718
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrrЭто формирование плана-графика оплат. Сначала формируются суммы и количество оплат. Они вносятся в таблицу. Потом вставляются даты....sdkuи посмотрите внимательно:поле взнос это график платежей(план),а поле факт это фактическая оплата,можно добавить поле фактДата и заполнять вручную(а как иначе?)Все это напоминает разговор слепого с глухим.
Интересно, Вы хоть читаете и вдумываетесь в то, что Вам пишут????
...
Рейтинг: 0 / 0
08.08.2019, 12:59
    #39846925
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrrЭто формирование плана-графика оплат. Сначала формируются суммы и количество оплат. Они вносятся в таблицу. Потом вставляются даты....sdkuи посмотрите внимательно:поле взнос это график платежей(план),а поле факт это фактическая оплата,можно добавить поле фактДата и заполнять вручную(а как иначе?)Все это напоминает разговор слепого с глухим.
Интересно, Вы хоть читаете и вдумываетесь в то, что Вам пишут????
Я же конкретно и, надеюсь, понятно изложил суть задачи. Сделал простой пример бд (см. выше). Ничего добавлять не нужно, вопрос чисто технический. Можно ли записать даты (1-я текущая, остальные - пятницы) в уже имеющиеся записи с заполненными суммами платежей?
...
Рейтинг: 0 / 0
08.08.2019, 13:28
    #39846960
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr,
для тех кто в танке:
-заполняем главную форму
-"послеОбновления"(нажатия Enter) поля [сумма] заполняется подчиненная форма(соответственно таблица-источник) план платежей [датаО] -дата платежа план(каждую пятницу начиная от даты в поле[дата])и [взнос] c запланированным размером(в данном случае [сумма]/30 а вообще любая Ваша формула)
-поля [факт]-фактический платеж и добавленное [фктическаяДатаПлатежа]заполняются вручную при совершении платежа и для формирования чека(приходного ордера и т.д)
-что не так???
...
Рейтинг: 0 / 0
08.08.2019, 13:49
    #39846973
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
wladimirrr.....Да, добавить 30 записей с датами пятниц.wladimirrr...Ничего добавлять не нужно, вопрос чисто технический.Стой там-иди сюда,однако(сказал чукча,так ничего и не поняв)
А почему план выплат создается не одновременно с внесением суммы заказа(договора,контракта)-обычно клиент хочет видеть план платежей одновременно с договором и, в случае обоюдного согласия, с возможностью его корректировки
...
Рейтинг: 0 / 0
08.08.2019, 13:59
    #39846985
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr.....Да, добавить 30 записей с датами пятниц.wladimirrr...Ничего добавлять не нужно, вопрос чисто технический.Стой там-иди сюда,однако(сказал чукча,так ничего и не поняв)

А почему план выплат создается не одновременно с внесением суммы заказа(договора,контракта)-обычно клиент хочет видеть план платежей одновременно с договором и, в случае обоюдного согласия, с возможностью его корректировки
Вот и займи у них денюжков (как насчитают "мама не горюй")
...
Рейтинг: 0 / 0
09.08.2019, 22:00
    #39847709
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Записать в таблицу несколько пятниц от определенной даты.
sdkuwladimirrr,
для тех кто в танке:
-заполняем главную форму
-"послеОбновления"(нажатия Enter) поля [сумма] заполняется подчиненная форма(соответственно таблица-источник) план платежей [датаО] -дата платежа план(каждую пятницу начиная от даты в поле[дата])и [взнос] c запланированным размером(в данном случае [сумма]/30 а вообще любая Ваша формула)
-поля [факт]-фактический платеж и добавленное [фктическаяДатаПлатежа]заполняются вручную при совершении платежа и для формирования чека(приходного ордера и т.д)
-что не так???
Все не так!
Заполнять поля (сумма) не нужно. Они уже предварительно заполнены (один спец просчитывает и записывает суммы, затем другой специалист должен проставить текущую дату и остальные даты-пятницы). Надо решить, как в эти записи автоматически вставить даты.
Я написал:"ничего добавлять не надо", имея в виду, ничего придумывать и менять в логике работы не надо. Что непонятного? Кто из нас в танке? Чем стебаться, предложите как решить задачу.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Записать в таблицу несколько пятниц от определенной даты. / 25 сообщений из 29, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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