Имя: Пароль:
1C
1С v8
Приведение номера телефона
0 Plast1x
 
30.07.18
19:23
Добрый вечер форумчане! Возникла необходимость привести у всех партнеров номера телефонов к виду +7(XXX)XXX-XX-XX
В данный момент номера записаны по разному:
(495) 7752760
8 (913) 9161554
7 (911) 1836088
и т.д

Можно ли как то привести программно все это к нужному виду? Номера телефонов считываются из файла в строковую переменную, после чего идет запись в КИ партнера, типа
НоваяКИ.НомерТелефона = СокрЛП(Ехсел.Cells(СчетчикЦикла,8).value);
Тут идет считывание телефона из Excel файла в строку.
Может кто сталкивался с этим и у кого то есть идеи?
Заранее большое спасибо!
1 MetaDon
 
30.07.18
19:31
в чем проблема то?
обычная работа со строк.значениями
находишь ( - вырезаешь до,
анализ/замена
находишь ) - вырезаешь после,
вырезаешь 3 символа,2,2 ,
пять минут дел
2 spectre1978
 
30.07.18
19:55
Первый и основной вопрос - в базе только российские номера или есть других стран?
Рассмотрим первый случай.
Вырезаете все кроме цифр.
Затем проверяете чтобы в результате получилось длина строки 10 или 11.
Если цифр 10, то добавляете код страны (+7).
Если цифр 11, то заменяете начальную 7 или 8 на +7.
Далее вставляете скобки и тире по вкусу.
3 Krendel
 
30.07.18
21:02
(0) Это задача для 1-го курса тех вуза, когда учат азам программирования? Ты уверен что тебе в программисты?
4 Plast1x
 
30.07.18
23:55
Извиняюсь, большой поток информации в голову стукнул. Начитался про всякие маски, уже все перемешалось в голове)
Действительно легко и просто. Извиняюсь за беспокойство)
5 Fram
 
31.07.18
01:53
Веселуха там, где в конце приписан добавочный номер или второй номер через запятую или еще как
6 Zamestas
 
31.07.18
02:40
(5) Там на самом деле алгоритм простой: Перебирать пока цифры и если кончились сколько их, с чего начинаются и вес проблемы если "не понятно".
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший