Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

18 Июнь 2018, 12:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1 2 »   Вниз
  Печать  
Автор Тема: Проблема с форматом по умолчанию при заполнении таблицы  (Прочитано 6848 раз)
0 Пользователей и 1 Гость смотрят эту тему.
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Стартовое сообщение: 26 Июнь 2013, 08:37 »

Суть проблемы: с целью экономии времени хочу указать формат номера телефона, чтобы не вставлять скобки и тире. В настройках таблицы выбрал тип поля - Число (Numeric) для поля "номер телефона". Т.к. это поле не всегда заполняется, то выбрал Обязательное - нет. Длина - 100. Знаков после запятой - 0. Значение по умолчанию пробовал и указывать и оставлять пустым. Пример формата забил (000)000-00-00.
Все это мероприятие сохранил.
При заполнении таблицы через форму указываю номер телефона, 1111111111, при переходе к следующей графе он меняет запись на (111)111-11-11, при переходе к следующей записи и возвращению на заполненную он показывает (000)000-00-00.
Что я сделал неправильно? Как исправить этот косяк?
Записан
Helen
Администратор
*
Offline Offline

Пол: Женский
Расположение: Екатеринбург
Сообщений: 2 517


WWW
« Ответ #1: 26 Июнь 2013, 10:01 »

тестовый пример БД можете приложить к сообщению? Какая версия офиса используется?
Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #2: 26 Июнь 2013, 11:20 »

Использую LibreOffice 4.0.4.2.
Тестовую базу вложил.


[вложение удалено Администратором]
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #3: 26 Июнь 2013, 12:51 »

Вы указали для этого поля в Пример формата телефонный формат, ну программа его честно и показывает.
Она права, надо было указать простой числовой (или текстовый).
Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #4: 26 Июнь 2013, 13:03 »

надо было указать простой числовой (или текстовый)
А как правильно сделать, чтоб она сама добавляла скобки и тире при заполнении таблицы через форму?
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #5: 26 Июнь 2013, 14:48 »

В таблице для поля Номер телефона установить числовой формат: "("000")"000"-"00"-"00", может стать таким:  (000")"000"-"00"-"00  - это нормально.
Текстовое поле Номер телефона заменить на Форматированное поле Номер телефона.
Пример приложен.
На Apache все работает.

[вложение удалено Администратором]
Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #6: 27 Июнь 2013, 09:06 »

На Apache все работает.
К сожалению, при открытии приложенного Вами примера и заполнении номера телефона через форму он опять превратился в (000)000-00-00. Грустный
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #7: 27 Июнь 2013, 10:41 »

У меня работает и на AOO 3.4.1 и на LO 4.0.1.2 (Windows XP).
Вот картинки и сами файлы.
В выложенную ранее базу добавлены через форму новые записи, номер телефона вводился в форме как ряд цифр (например, 7777777777), после перехода к другому полю превращался в (777)777-77-77.
Как и требовалось, и в (000)000-00-00 не превращался.

(для АОО на картинке не добавленная запись, а имевшаяся изменена для примера)

У вас, как я понял, LibreOffice 4.0.4.2
Linux/Windows?

Может кто-нибудь проверить на LibreOffice 4.0.4.2 ?
Для Linux и для Windows.



[вложение удалено Администратором]
« Последнее редактирование: 27 Июнь 2013, 10:51 от Hasim » Записан
DixiX57
Пользователь
**
Offline Offline

Сообщений: 60


« Ответ #8: 27 Июнь 2013, 11:02 »

Тоже попробовал. LO 4.1.0.1 Oracle Java 1.7.0_25 Win XP. При попытке изменить запись и потом перейти к другой записи или при попытке создать новую запись получаю java.lang.NumberFormatException.
oxida
Попробуйте перейти к другой записи после изменения номера телефона и превращения в (000)000-00-00, что будет у Вас?
« Последнее редактирование: 27 Июнь 2013, 11:05 от DixiX57 » Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #9: 27 Июнь 2013, 11:16 »

Да, у меня LibreOffice 4.0.4.2 Windows.

Видимо мне очень везет:
1. Приложена картинка сразу после заполнения графы номера
2. Приложена картинка после нажатия Enter/Tab.
3. Приложена картинка - результат попытки сохранения записи.

По непонятным мне причинам при нажатии Enter/Tab после "Контактного лица" перескакивает в "Номер папки" минуя "Номер телефона". К "Номеру телефона" переходит после "Примечания". После заполнения "Номера телефона" не сохраняет запись, а переходит к "Району" и так циклично скачет, не переходя на следующую запись.

[вложение удалено Администратором]
Записан
DixiX57
Пользователь
**
Offline Offline

Сообщений: 60


« Ответ #10: 27 Июнь 2013, 11:48 »

Я бы вообще сделал вот так. Данные в поле номера телефона - текстовые. Использую в форме поле с маской ввода. Есть у этого поля некоторые ограничения , но...

[вложение удалено Администратором]
Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #11: 27 Июнь 2013, 12:14 »

Данные в поле номера телефона - текстовые. Использую в форме поле с маской ввода.
Подскажите, пожалуйста, как вы добились такой маски ввода?
Я изменил в существующей базе данных тип поля на "Текст VARCHAR" тыкнул по ... справа от примера формата, набрал в Коде формата нулики, тыкнул на галку, ОК. А там как висела @ так и висит.
Потыкался, добился, чтобы в примере формата появились нулики, но при заполнении графы в форме оно не меняется на вид, указанный в примере формата.
Нужно что-то еще сделать?
« Последнее редактирование: 27 Июнь 2013, 12:27 от oxida » Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #12: 27 Июнь 2013, 12:30 »

при нажатии Enter/Tab
Попробуйте Свойства формы - Цикл - Активная запись
(и вообще поиграться с Циклом)

Я то переходил мышью к полям формы.
Записан
DixiX57
Пользователь
**
Offline Offline

Сообщений: 60


« Ответ #13: 27 Июнь 2013, 15:21 »

Подскажите, пожалуйста, как вы добились такой маски ввода?
В таблице - просто Тип Текст VARCHAR, Длина 14, Код формата @. А вот в форме я использовал поле с маской ввода (Дополнительные элементы управления -> Поле с маской ввода). В свойствах поля указал: Маска ввода LNNNLNNNLNNLNN, Маска знаков (000)000-00-00, Максимальная длина текста 14
« Последнее редактирование: 27 Июнь 2013, 15:25 от DixiX57 » Записан
oxida
Новичок
*
Offline Offline

Сообщений: 7


« Ответ #14: 27 Июнь 2013, 15:27 »

(Дополнительные элементы управления -> Поле с маской ввода)
Спасибо огромное. Все заработало. Цель достигнута, не совсем так, как планировалось изначально, но и так замечательно.
Записан
Страниц: 1 2 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!