Функция "Формат" 1С V 8.1

  • Автор темы VoodyGoo
  • Дата начала
Статус
Закрыто для дальнейших ответов.
V

VoodyGoo

#1
Встроенные функции языка
Формат (Format)
Синтаксис:
Формат(<Значение>, <Форматная строка>)

Значение первого параметра выдергиваю из таблицы ДБФ, поле типа Нумерик.
Когда значение 3-х значное (214, 254, 145) все нормально, но когда оно больше 1000 число имеет формат (1 254, 2 954, 25 452 и т.д.) Выловить из строки пробел (т.е. зазделитель тысяч и сотен) не получилось. Нашел функцию "формат", но не могу понять, как работает её 2-й парамтр, пробовал ЧГ и ЧРГ, ничего не выходит.
Помогите!!!
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#2
А чем тебе просто Ч не подходит?
 
V

VoodyGoo

#3
А чем тебе просто Ч не подходит?
пишу
Код:
Формат(ЗнПоляКОД, "Ч");
и по полученному значению
Код:
Контр.НайтиПоКоду(ЗнПоляКОД)
где Контр это справочник.
Выдает сообщение Не найден Контрагент с кодом: 21 456 Наименование в программе РасчетаТарифов: ОАО "Новосибирск Авиа"
в справочнике Код = 21456. Вот мне и надо от этого пробела (21_456) избавиться
 

puh14

Well-known member
11.07.2008
1 412
0
#4
Контр.НайтиПоКоду(СокрЛП(Формат(ЗнПоляКОД, "Ч")))

Судя по тому что ты написал - форматированое значение в переменную не записывается и следовательно ты ищешь по старому значению - то есть неформатированному.
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#5
А если попробовать так:
Код:
Контр.НайтиПоКоду(Число(ЗнПоляКОД))
 

vbs

Well-known member
18.02.2007
1 708
1
#6
2 KiR
Контр.НайтиПоКоду(Число(ЗнПоляКОД))

Боюсь, что
если ЗнПоляКОД = "21 456" результат будет 21 !
1. А зачем вообще форматировать число ? Если код контрагента числовой - по нему (ДВФ.Код) и искать
2. Можно из ЗнПоляКОД удалить пробелы перед поиском
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#7
2 vbs
А мне кажется что пробел появляется в результате формат(ЗнПоляКОД, "Ч"); могу конечно и ошибаться
 

vbs

Well-known member
18.02.2007
1 708
1
#8
Вот я и задаюсь вопросом - ЗАЧЕМ использовать формат ? Ищи сразу по коду
 
V

VoodyGoo

#9
Вот я и задаюсь вопросом - ЗАЧЕМ использовать формат ? Ищи сразу по коду
Сразу по коду говорит не найден такой...,
формат поля хоть и числовой, а значение почемуто 12 345.
Главное, что проблема решена уже)

Код:
Формат(ДБФ.nom, "Ч=0");
наверно при записи при выполнении
Код:
ЗнПоляКод = ДБФ.nom;
что происходит с типами..?
 
Статус
Закрыто для дальнейших ответов.