Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Как показать количество символов в поле?  [new]
Igrok4
Member

Откуда:
Сообщений: 288
Есть числовое поле с номером счёта клиента. Операторы привыкли заполнять его не считая кол-ва символов, а просто видя конец поля.
Как можно показать символы в поле, например знаками '#' или ещё как-то? Спасибо!
16 окт 06, 12:26    [3265012]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
Если это символьное поле, то кто мешает перед реальным заполнением просто забить некоторые спец.символы чтобы при вводе их заменять?

ThisForm.TextBox1.Value = REPLICATE("#",20)

Как вариант, можно нарисовать линии ПОД объектом TextBox. Поскольку идет ввод только цифр, то ширина каждого символа заранее известна. Вот под TextBox и нарисуй нужное количество объектов Line.
16 окт 06, 14:08    [3265833]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
-=AlexiS=-
Member

Откуда: Одесса
Сообщений: 712
может подойдет просто показ сколько цифр введено ?
если так то
создаем лабел
и в интерактивчандже текстбокса пишем
ThisForm.Label1.Caption=TRANSFORM(LEN(ALLTRIM(STR(this.Value)))) если это цифровое поле
или
ThisForm.Label1.Caption=TRANSFORM(LEN(ALLTRIM(this.Value))) если это символьное
или например под текстбоксом создать лабел из REPLICATE("#",20)
и в том-же интерактивчандже
ThisForm.Label1.Caption=REPLICATE('_',(LEN(ALLTRIM(STR(this.Value)))))+REPLICATE('#',20-(LEN(ALLTRIM(STR(this.Value)))))
16 окт 06, 14:43    [3266126]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
PaulWist
Member

Откуда:
Сообщений: 2236
Igrok4
Есть числовое поле с номером счёта клиента. Операторы привыкли заполнять его не считая кол-ва символов, а просто видя конец поля.
Как можно показать символы в поле, например знаками '#' или ещё как-то? Спасибо!


А почему собственно возник такой вопрос?

Если у Вас номера счета клиента сохраняются с длиной <> 20 , то это недоработка структуры (ограничений) БД, добавьте правило поля для таблички и всё будет в ажуре.
16 окт 06, 14:49    [3266163]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
S866
Member

Откуда:
Сообщений: 387
а еще визуализировать ввод в поля (по типу как в банковских клиентах отделяя например запятыми ) можно используя Inputmask в textbox
16 окт 06, 16:23    [3266870]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
Igrok4
Member

Откуда:
Сообщений: 288
PaulWist

А почему собственно возник такой вопрос?

Если у Вас номера счета клиента сохраняются с длиной <> 20 , то это недоработка структуры (ограничений) БД, добавьте правило поля для таблички и всё будет в ажуре.


Нет, вопрос не в этом.
Например счёт: 40702810523000000001
оператор набирает счёт и после 3, жмёт 0 не считая кол-во нулей. Видя, что до конца вводимого поля остаётся один символ, останавливается и жмёт 1.
16 окт 06, 16:41    [3267022]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
Igrok4
Member

Откуда:
Сообщений: 288
ВладимирМ
Если это символьное поле, то кто мешает перед реальным заполнением просто забить некоторые спец.символы чтобы при вводе их заменять?

ThisForm.TextBox1.Value = REPLICATE("#",20)

Как вариант, можно нарисовать линии ПОД объектом TextBox. Поскольку идет ввод только цифр, то ширина каждого символа заранее известна. Вот под TextBox и нарисуй нужное количество объектов Line.


Можно сделать и такой вариант, но тогда надо будет сделать проверку на наличие символов '#' в поле, т.к. поле необязательно для заполнения. Либо м.б. заполнено не до конца.
16 окт 06, 16:45    [3267053]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
-=AlexiS=-
Member

Откуда: Одесса
Сообщений: 712
автор
Нет, вопрос не в этом.
Например счёт: 40702810523000000001
оператор набирает счёт и после 3, жмёт 0 не считая кол-во нулей. Видя, что до конца вводимого поля остаётся один символ, останавливается и жмёт 1.

Как-то давно делал так - вместо охрененного кол-ва 0 оператор вбивал *
т.е. 40702810523000000001=40702810523*1
на валиде ищем * и меняем его на такое кол-во 0 чтобы длина была 20.
типа так
nLen=LEN(CHRTRAN('40702810523*1','*',''))
?STRTRAN('40702810523*1','*',REPLICATE('0',20-nLen))
конечно нужно перед этим проверить чтобы * была 1
16 окт 06, 16:59    [3267149]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
alex11100
Guest
2 -=AlexiS=-

счета лучше сделать
из 5-ти текстбоксов


сч.1-го порядка - 3 знака
сч,2-го порядка 2 знака
3 знака код валюты
контролька - 1 знак
банк - 4 знака
7 знаков сч.3-го порядка

ххх хх ххх х хххх ххххххх
сч сч вал банк счет
16 окт 06, 17:06    [3267194]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
-=AlexiS=-
Member

Откуда: Одесса
Сообщений: 712
to alex11100
вообщето это вопрос не мой а Igrok4.
насчет структуры счета к сожалению не в курсе (теперь буду знать).
а мой кусок вообше-то из заполнения куска номенклатурного номера- он как раз у нас был из нескольких частей так вот чтобы не печатать лишних 0 такую фишку и придумали.
16 окт 06, 17:23    [3267333]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
alex11100
Guest
2 -=AlexiS=-
тетки зацалуют

2 Igrok4

5 - в твоем счете - это контролька
можно проверить и юзера послать в сад
поищи есть стандартные процедуры проверки

не найдешь - покажу


407 02 810 5 2300 0000001
это рублевый счет №1 в банке 2300
на балансовом счете 407 субсчет 02
16 окт 06, 17:29    [3267405]     Ответить | Цитировать Сообщить модератору
 Re: Как показать количество символов в поле?  [new]
alex11100
Guest
http://www.peterlife.ru/download%20free%20online/google%20search/google%20search%2008.htm
16 окт 06, 17:34    [3267442]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить