powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Формирование строки из значений таблицы
19 сообщений из 19, страница 1 из 1
Формирование строки из значений таблицы
    #39227798
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые профессионалы! Подскажите, как можно сформировать строку в поле "формула" из значений подчиненной формы.
Строка такого вида: Гамма: белый(22)+красный(12)+синий(5).
Количество цветов в подч. форме может быть разным.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39227863
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эта задача, в принципе, имеет решение?
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39227867
Predeclared
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для сборки строки проще всего пользовать ADODB Recordset GetString.
Вот только сохранять эту строку имеет ли смысл?
Правильнее получать ее "на лету" по мере надобности.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39227876
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Predeclared, я "чайник" в sql, только изучаю. Может дадите решение полностью?
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230179
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что, нет решения у этой задачи? Какие есть мнения, поделитесь пожалуйста.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230296
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
вам для отчета это надо или для формы
и там и там надо писать код, достаточно небольшой
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230342
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА, мне надо эту строку сформировать в форме, а потом я ее буду использовать в отчетах.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230361
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот способ без ADO.
1. В свойстве ControlSource поля Формула поставить =FuncG()
2. В модуле формы создать функцию
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Function FuncG() As String
 Dim Rst As DAO.Recordset, _
     S As String
 Set Rst = <имя контрола, содержащего подчиненную форму>.Form.RecordsetClone
 With Rst
  Do Until .EOF
   S = S & "+" & !цвет & "(" & !насыщенность & ")"
   Rst.MoveNext
  Loop
  .Close
 End With
 FuncG = Mid(S, 2)
End Function
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230370
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr
а какой длины может достигать эта строка
если более 254 символа --возможны проблемы
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230382
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПЕНСИОНЕРКАа какой длины может достигать эта строка
если более 254 символа --возможны проблемыПочему?
Какие могут быть проблемы, если поле Формула свободное?
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230389
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,
Если у меня имя формы "гамма", а имя подчиненной формы "подчформа Запрос1", то как будет выглядеть <имя контрола, содержащего подчиненную форму> ? Извините, только осваиваю программирование, до этого пользовался исключительно макросами.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230393
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все, разобрался! Огромное спасибо!
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230395
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,
А как сделать, чтобы эта строка формировалась в следующих записях формы "гамма". В первой записи она сформировалась, а когда я создал 2-ю запись, поле осталось пустым. Команда меню "обновить" не помогает.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230397
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,
Строка формируется только если переключиться в режим конструктора, а затем в режим формы.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230426
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,

Добавьте выделенную строку
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Function FuncG() As String
 Dim Rst As DAO.Recordset, _
     S As String
 Set Rst = <имя контрола, содержащего подчиненную форму>.Form.RecordsetClone
 With Rst
  .MoveFirst
  Do Until .EOF
   S = S & "+" & !цвет & "(" & !насыщенность & ")"
   Rst.MoveNext
  Loop
  .Close
 End With
 FuncG = Mid(S, 2)
End Function
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230436
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,
Да, теперь работает. При создании новой записи, после выбора цветов надо фокус перевести в поле формула и задать команду меню Обновить.
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230558
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle, при вводе новой записи, если цвета не выбраны, в поле формула выводится "#Ошибка". Можно как то заменить ее на символы или цифры, что бы потом использовать значение этого поля (формула) в операторе Iif?
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230580
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например, так - добавить выделенное желтым.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Function FuncG() As String 
  Dim Rst As DAO.Recordset, _ 
      S As String 
  Set Rst = [подчформа Запрос1].Form.RecordsetClone 
  With Rst
    If .RecordCount = 0 Then
      S = "+AAAAAAAA"
    Else
      .MoveFirst 
      Do Until .EOF 
        S = S & "+" & !цвет & "(" & !насыщенность & ")" 
        .MoveNext 
      Loop 
      .Close 
    End If
  End With 
  FuncG = Mid(S, 2) 
End Function
...
Рейтинг: 0 / 0
Формирование строки из значений таблицы
    #39230913
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle, классно! Спасибо!
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Формирование строки из значений таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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