Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/19: Рейтинг темы: голосов - 19, средняя оценка - 4.68
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185

Обрезание текста при вставке

28.08.2009, 19:59. Показов 4325. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно вносить большой текстовой блок (MEMO) в поле.
название - текст.
название выбирается из раскрывающегося списка и заносится в текущее поле.
соответствующий ему текст (MEMO) заносится в другое поле этой же формы.

как это должно быть реализовано? желательно (но не обязательно) если без программирования.

то что сделано:
сделан раскрывающийся список. из двух колонок. вторая длины около 0,1.
процедурой:
Visual Basic
1
2
3
4
5
6
7
Private Sub Поле1_AfterUpdate()
  If Not IsNull(Поле1) Then
        Поле2 = Поле1.Column(1, Поле1.ListIndex)
    Else
        Поле2 = Null
  End If
End Sub
текст из второй колонки добавляется в нужное поле. Всё замечательно работает, только вот при вставке текст обрезается.

Добавлено через 3 минуты
и второй вопрос. если уже сделана и долго работает с приемлемым качеством БД в Access, имеет ли смысл начинать делать её под Delphi+SQL?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.08.2009, 19:59
Ответы с готовыми решениями:

Фильтр при вставке
Здравствуйте, Есть таблица (ID_товара, Наименование, ID_действия) пример: 1 Мяч 1 2 Тетрадь 1 3 Ручка 5

Обрезание текста при уменьшении окна браузера
У меня есть картинка и рядом с ней три строчки текста. При уменьшении окна браузера текст сползает под картинку и становиться в пять строк....

Смещение текста при вставке логотипа
У меня при вставление логотипа немного сместилось, как можно убрать это. Я пробовал добавлять margin-top: -30px; и встает нормально, но...

16
 Аватар для BasicMan
19318 / 2626 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
28.08.2009, 20:01
Цитата Сообщение от jrougre Посмотреть сообщение
если уже сделана и долго работает с приемлемым качеством БД в Access, имеет ли смысл начинать делать её под Delphi+SQL
сначала можно перевести на Access+SQL Server, (т.е. adp-файл, а затем при необходимости можно и на Делфи перейти) в любом случае с переходом на SQL Server вы много выиграете
0
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
04.09.2009, 07:34  [ТС]
что то так никто ничего и не знает =/
долго бьюсь уже с этой проблемой.
0
 Аватар для Елена
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
04.09.2009, 09:57
Цитата Сообщение от jrougre Посмотреть сообщение
нужно вносить большой текстовой блок (MEMO) в поле.
название - текст.
название выбирается из раскрывающегося списка и заносится в текущее поле.
соответствующий ему текст (MEMO) заносится в другое поле этой же формы.

как это должно быть реализовано? желательно (но не обязательно) если без программирования.

то что сделано:
сделан раскрывающийся список. из двух колонок. вторая длины около 0,1.
процедурой:
Visual Basic
1
2
3
4
5
6
7
Private Sub Поле1_AfterUpdate()
  If Not IsNull(Поле1) Then
        Поле2 = Поле1.Column(1, Поле1.ListIndex)
    Else
        Поле2 = Null
  End If
End Sub
текст из второй колонки добавляется в нужное поле. Всё замечательно работает, только вот при вставке текст обрезается.

Добавлено через 3 минуты
и второй вопрос. если уже сделана и долго работает с приемлемым качеством БД в Access, имеет ли смысл начинать делать её под Delphi+SQL?
а текст точно должен быть вставлен в поле таблицы? Может лучше его вызывать с помощью гиперссылки? У меня на форме есть поле, куда с помощью диалогового окна я выбираю адрес необходимого текста, адрес текста запоминается в таблице
0
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
04.09.2009, 22:42  [ТС]
текст этот сохраняется в таблице визитов пациентов. оттуда он распечатывается в отчёте о посещении и его просматривают позже при пролистывании посещений для оценки итории болезни.
расскажи как вставлять его ссылкой, если это позволит реализовывать старые функции то мне собственно без разницы как именно они будут реализовываться.
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
05.09.2009, 00:50
Без программирования не получится. Вам необходимо после выбора значения в поле со списком производить с помощью, например, объекта Recordset:
1. Поиск в таблице соответствующего MEMO-значения.
2. Копирование из одного поля таблицы в другое поле (другой?) таблицы.
3. Обновление формы.
Хотя, возможно, п. п. 1-2 можно будет объединить в 1 запрос на обновление...
1
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
05.09.2009, 16:19  [ТС]
ну звучит заманчиво) а как это реализовать в коде? если не сложно..
в случае с моим примером?
имеется:
таблица1 "диагноз" таблица2 "визит"
поля талбицы1 "болезнь" "мероприятия" (мемо)
поля таблицы2 "код" (счётчик) "мероприятия" (мемо)
поля формы для занесения данных в таблицу 2: "диагноз" (для автовыбора мероприятий) и "мероприятия"
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
05.09.2009, 17:00
Не-а, выкладывайте свои таблицы и формы (можно в сокращённом виде) - будем посмотреть (формат - не выше MS Access 2000, в сжатом и заархивированном виде), поскольку реализация зависит от конкретного интерфейса (конкретно: вид формы - ленточная, простая или табличная может повлиять на механизм обновления данных).
0
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
06.09.2009, 08:52  [ТС]
ок. щас сварганю модельку.
0
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
06.09.2009, 09:43  [ТС]
вот оно
образец проблемы.rar
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
06.09.2009, 12:36
Например, так.
Вложения
Тип файла: rar образец проблемы.rar (19.9 Кб, 43 просмотров)
1
 Аватар для Елена
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
06.09.2009, 19:31
Цитата Сообщение от jrougre Посмотреть сообщение
вот оно
Вложение 9802
Посмотри, может чем-то поможет..
Вложения
Тип файла: rar вв.rar (2.5 Кб, 38 просмотров)
1
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
06.09.2009, 22:43  [ТС]
Михайло_, ох. ну по крайней мере оно работает как надо. разобраться почему не могу - знаний не хватает)
опиши как это работает.
ну а я тем временем постараюсь это втолкать в существующую базу. посмотрим какой будет результат.
спасибо. по крайней мере это уже серьёзный шаг вперёд.


Елена_,
оО не понял. слишком сложно. вдвойне не могу понять как работает и как это вставлять в мою базу.
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
06.09.2009, 23:46
1. В таблицу diagnoz добавлено поле diagnoz_No для нумерации записей (диагнозов и основных методов лечения). Это поле необходимо для связи с таблицей vizit.
2. В таблицу vizit добавлено поле diagnoz_No для указания диагноза. Это поле необходимо для работы формы.
3. В форме добавлено поле Код, чтобы знать на какой записи таблицы vizit находится пользователь.
4. Немножко переделано поле со списком diagnoz:
- изменён запрос-источник подстановки;
- поле со списком теперь привязано к даным таблицы vizit через поле diagnoz_No.
Вся работа - в программе обработки события "После обновления" (AfterUpdate) поля со списком diagnoz. Комментарии - в тексте программы.
Благодаря наличию поля "код" типа "счётчик" в таблице vizit, после выбора пользователем диагноза, в таблице vizit MS Access создаёт новую запись и ей присваивает очередной номер. Этот номер запоминается в глобальной переменной kod_modul (она объявлена на закладке "Модули" в Module1). Так же, в поле diagnoz_No таблицы vizit заносится номер выбранного диагноза. Однако, новая запись в таблице ещё не создана и в поле diagnoz_No таблицы vizit отсутствует выбранный пользователем номер диагноза. Поэтому далее запись принудительно сохраняется и с помощью запроса на обновление производится заполнение поля lecheniye таблицы vizit (копируется текст из таблицы diagnoz). Чтобы изменения в таблице (появление текста в поле lecheniye таблицы vizit) отобразились но форме, обновляются данные формы (Requery). При этом курсор устанавливается на первую запись. Чтобы вернуться к только что создаванной (или отредактированной) записи, выполняется переход к записи номер kod_modul.
1
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
08.09.2009, 10:52  [ТС]
при портировании возникла проблема вроде бы причина в следующем:
Цитата Сообщение от Михайло_ Посмотреть сообщение
В форме добавлено поле Код, чтобы знать на какой записи таблицы vizit находится пользователь.
у меня уже есть таблица. в ней около 15тыс записей, причём изза удаления ошибочных записей код записи уже давно и как попало не соответвует номеру строки.
при встраивании формы в имеющуюся базу она либо перескакивает не на ту запись после редактирования лечения (у меня коды записей начинаются с 4 %) ), либо выдаёт ошибку 2105 "не могу перейти в указанной записи" при создании новой записи после выбора диагноза дебаггер отправляет на эту строчку:
Visual Basic
1
DoCmd.GoToRecord , , acGoTo, kod_modul
хотя данные добавляются вроде корректно
(может невозможность перейти на вновь созданную запись связана с другим: у меня в таблице куча ещё разных полей и аксесс не хочет переходить на новую запись если эти поляне были заполнены.)

нужно переделывать модуль перенаправления на запись, или проще перенумеровать все записи в таблице? (как нить обнулись и снова проставить кодовое поле. хотя это не желательно)
0
118 / 118 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
09.09.2009, 01:32
Действительно, промахнулся, - простите. Вместо строки

Visual Basic
1
DoCmd.GoToRecord ...
напишите:

Visual Basic
1
Me.Recordset.FindFirst "код=" & kod_modul
1
 Аватар для jrougre
16 / 16 / 0
Регистрация: 28.08.2009
Сообщений: 185
09.09.2009, 08:01  [ТС]
УРААА!! после нескольких часов битья головой об стенку и вместе с последним исправлением всё таки заработало)
огромное спасибо. несколько месяцев я бился с этой задачей и наконец удалось её разрешить. спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.09.2009, 08:01
Помогаю со студенческими работами здесь

При вставке текста выкидывает из браузера!
Привет всем, возникла такая проблема, копирую текст и хочу его вставить на страницу любого сайта но при нажатии ctrl v или просто вставить...

TextView ошибка при вставке текста
Не могу понять в чем дело, возникает ошибка. Помогите пожалуйста String txt = "Количество слов: "; TextView res =...

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

Сохранение ориентации страниц при вставке текста
Добрый день уважаемые форумчане! Прошу помочь. Задача: вставить много страниц текста из 1 файла во второй, где тоже много страниц...

При вставке текста в файл нарушается форматирование
Такая проблема: при вставке текста в документ убираются строки и все сливается в кашу( hand=autoit.control_get_text('',...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru