У вас переменная ОКПОКонтрагента как появляется? Не преобразованием ли числового значения в строковое через функцию строка? Если да, то у вас в этой переменной пробелы затесались.
Нет, пробелов там точно нет.
Цитата(Petre @ 11.04.13, 9:25)
Я бы соединил существующую базу кодов с таблицей правильных кодов одним запросом, а потом делал запись.
В том то и проблема, что запрос не выполняется. Количество найденных 0, хотя они точно есть.
Так подскажите что исправить, потому что запрос из стандартной обработки, немного подкорректированный. И конечно хз как перезаписать ОКПО, это уже второй к вам вопрос.
Гуру 1С помогите! Задача следующая есть в справочнике Контрагенты поле КодпоЕДРПОУ, в существующей базе правильно введены только первые 7 чисел, есть входящая база с правильным ОКПО, нужно запросом найти код и заменить на правильный. Вот запрос, но он пока не работает...
ЗапросПоискаКонтрагента = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ | Контрагенты.Ссылка, | Контрагенты.КодПоЕДРПОУ КАК ОКПО, | Контрагенты.Наименование |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ |Контрагенты.КодПоЕДРПОУ ПОДОБНО &КонтрагентОКПО");
Вот проблема-таки в представлении числа. Вариант посимвольной записи все-таки подошел, хотя и не понятно почему изначально логически правильные операции не получались...
Цитата(logist @ 01.04.13, 12:12)
то у вас в файле нифига не число
Вы когда-нибудь пробовали в DBF файл с полем типа Numeric записать не число?
нет, этот вариант тоже не подходит.... Следующий вариант записывает как надо, но где-то на последующих этапах значение переписывается опять к виду группы из 3-х + пробел
МФО = СокрЛП(База.MFO); М=""; Для а = 1 По СтрДлина(МФО) Цикл КодСимвола = КодСимвола(Сред(МФО, а, 1)); Если (КодСимвола >= 48 И КодСимвола <= 57) Тогда М = М + Сред(МФО, а, 1); КонецЕсли; КонецЦикла; Таб.ПолучательМФО = М;
угу, я так и сделала, при записи из базы числа разделяются пробелом на группы из 3-х символов, вот этот пробел все и портит.... А бухгалтер ничего не могла сделать неправильно, это выгрузка из клиент-банка...
результат тот же - не записывается по причине той же ошибки. Может подскажите какой процедуре передается управление после нажатия кнопки создать из формы Контрагентов. Извините за такие может быть простые вопросы, просто на 1с не программирую, а бухгалтеру шибко надо, вот и сижу разбираюсь.
Цитата(ekris @ 01.04.13, 10:12)
В клиент-банке выберите банк проблемного контрагента, сделайте Ctrl+С его код МФО (или возьмите этот код из DBF) В 1С создайте этот банк, при создании код - Ctrl+V
Проблема в том, что бухгалтеру только купили 1с и все базы пустые, и ей бы хотелось, чтобы это все делалось автоматически, а не вбивать всех ручками....
ага, жутко загадочная, особенно если учесть, что она и так состоит из цифр, и поле DBF numeric , если просто сделать - МФО = Число(База.МФО), то результат не меняется, поэтому и прошу помочь, а не просто стебаться.
Подскажите как исправить, при загрузке п/п в которых есть новый контрагент, при добавлении его в базу (нажатие на кнопку - создать не найденное) возникает ошибка - В составе МФО банка должны быть только цифры. Не удалось создать банковский счет контрагента!
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!