• Mobile apps - просто как 2х2!

    Рост количества информации и ускорение темпов жизни все сильнее требует постоянного присутсвия в рабочей сети, в том числе и в пути. Именно поэтому такю большую популярность приобретают смартфоны, КПК и планшеты, представляющие собой мобильные компьютеры для доступа к рабочей и личной информации.

    Сегодня довольно сложно встретить человека без мобильного телефона или смартфона. Это уже не просто средство связи, но также и инструмент для работы, управления личными данными, общения в интернете, а также разного вида развлечений.

     
     
  • Аналитические данные

    Для иллюстрации разнообразных аналитических и научных данных довольно удобно использовать красивые диаграммы. Табличный редактор  от Microsoft Excel 2010 предлагает огромное количество как стандартных так и довольно редких диаграмм и позволяет создавать сложные комбинации из уже существующих шаблонов.

    Создать диаграмму в программе Excel 2010 довольно просто, так как, открывая эту программу, вам потребуется нажать всголишь пару кнопок. Остается всего лишь их заполнить таблицу с данными. Как же это сделать?Вы узнаете из статей нашего сайта.

     
  •  E-mail и рассылки

    Не секрет, что на сегодняшний день E-mail рассылка всё еще является эффективным рекламным средством, признанным во всей интернет среде, по соотношению цена качество. Охват массовой рассылки соизмерим, разве, что с рекламой по телефону

    Маркетинг путем рассылок по электронной почте позволяет создать необходимую программу регулярных рассылок для продвижения своего бренла и развития бизнеса в целом. Наконец, правильно построенный интернет маркетинг по почте может укрепить положительные взаимоотношения клиентов и организации.

     
  • Мобильные устройства

    Новости, обзоры и тесты портативной техники и мобильных устройств. Современные смартфоны, КПК и планшеты содержат в себе довольно взрослый функционал, аналогичный такому же у своих «старших братьев». Удаленное администрирование, браузеры с технологиями flash и java-script, синхронизация электронной почты, заметок, обмен различными файлами. Обо всем этом и не только подробнее на нашем сайте.

Программное редактирование Справочника 8.1

Категория Помощь

Доброго времени суток, при помощи СКД сделал отчет и выгузил Код, Наименование, НаименованиеПолное в xls справочника Номенклатура в УТ 8. Через некоторое время человек изменит наименования и полные наименования(там сейчас некрасиво, поэтому меняет), мне нужно будет загрузитьвсе это дело назад. С загрузкой их xls проблемм нет, но вот проблемма возникла с поиском элемента справочника по коду, делаю так:Элемент = Справочники.Номенклатура.Номенклатура.НайтиПоКоду(Прав(Excel.Код, 11));Для роверки:Если Элемент.ПустаяСсылка ТогдаСообщить("Нет такого" Excel.Код);ИначеСообщить("Естьт акой" Элемент.Ссылка);КонецЕсли;Сообщает он мне: Нет такого 1 667 (например).Спущает пробел между 1 и 667 но и с кодом до 999 не ищет.Получалось добавить реквизит в номенклатуру, и по нему искать(получилось но опят Доброго времени суток, при помощи СКД сделал отчет и выгузил Код, Наименование, НаименованиеПолное в xls справочника Номенклатура в УТ 8. Через некоторое время человек изменит наименования и полные наименования(там сейчас некрасиво, поэтому меняет), мне нужно будет загрузитьвсе это дело назад. С загрузкой их xls проблемм нет, но вот проблемма возникла с поиском элемента справочника по коду, делаю так:

Элемент = Справочники.Номенклатура.Номенклатура.НайтиПоКоду(Прав(Excel.Код, 11));

Для роверки:
Если Элемент.ПустаяСсылка Тогда
Сообщить("Нет такого" Excel.Код);
Иначе
Сообщить("Естьт акой" Элемент.Ссылка);
КонецЕсли;

Сообщает он мне: Нет такого 1 667 (например).
Спущает пробел между 1 и 667 но и с кодом до 999 не ищет.
Получалось добавить реквизит в номенклатуру, и по нему искать(получилось но опять же, если код <= 999), что совсем неприемлемо...

Загрузка из Excel идет на ура(кому надо поделюсь...), коды все из СКД.

Как найти элемент справочника по коду, нужно сделать 1 раз, поэтому могу сделать все что угодно и потом привести в порядок, например добавить реквизит для поиска...

Думаю что в идеале предствавить его в виде 0000000ХХХХ, т.е. заполнить слева нулями и убрать долбанный пробел.

Комментарии  

 
0 #11 no 30.07.2013 01:14
Ну значит тип кода "Строка", чтобы число 123 представить в виде 00000000123 можно использовать функция Формат, в конструкторе задашь длину и поставишь галочку "Выводить лидирующие нули".. Вроде так
 
 
0 #10 mihail 25.07.2013 20:56
ну в УТ код 123 выглядит как 00000000123, т.е. вначале все нулями заполненно.
Я сделал по следующему, для начала добавил реквизит к номенклатуре "Код2", и следующий код:

Объект = Выборка.ПолучитьОбъект();
Если Объект.ЭтоГрупп а = ЛОЖЬ Тогда
СтрПолная = Объект.Код;
СтрЧисло = Число(СтрПолная);
СтрСтрока = Строка(СтрЧисло);
Стр = СтрЗаменить(Стр Строка, Символы.НПП, "");
Объект.Код2 = Стр;
Объект.Код2 = стр;
Попытка
Объект.Записать();
Исключение
// Сообщить("....")
КонецПопытки;
КонецЕсли;

И потом:

Спр = Справочники.Ном енклатура.Найти ПоРеквизиту("Ко д2", Прав(стрОбработ анная, 11));

Ну и в конце, если все нашел, выводит сообщение что все норм.

Потом я перелопачу весь справочник, программно значение реквизита "Код2" сделаю null и в конфигураторе его удалю.
 
 
0 #9 no 24.07.2013 01:34
*...НайтиПоКоду (Прав(Excel.Код , 3); Код например 456
не работает. Пробовал и в строковом вие искать и как число....
Если делаю дополнительный реквизит, и в нем указываю код(без нулей) Тогда
НайтиПоРеквизиту("ДопРеквизит", Код); Находит.*

Тип кода строковый чтоли? Или че там за нули такие?
 
 
0 #8 mihail 23.07.2013 00:39
СтрЗаменить(Пра в(Excel.Код, 11), Символы.НПП, "");
Работает идиально:) Спасибо Вам:)
 
 
0 #7 mihail 17.07.2013 08:07
Оке, спасибо огромное, думаю получится)))))

Еще вопросик
...НайтиПоКоду(Прав(Excel.Код, 3); Код например 456
не работает. Пробовал и в строковом вие искать и как число....
Если делаю дополнительный реквизит, и в нем указываю код(без нулей) Тогда
НайтиПоРеквизиту("ДопРеквизит", Код); Находит.
Думаю чтоб не ипаться, добавить его, программно заполнить кодом без нулей, потом по нему все что нужно найти, и программно очистить, и совсем удалить, БД же от этого ниче не будет?:)
 
 
0 #6 no 12.07.2013 07:16
Какой нафиг СтрЗаменить? Есть же Формат:
Формат(Прав(Excel.Код, 11), "ЧГ=0");
И никаких пробелов в коде ;)

Но коль уж хотите через СтрЗаменить, что ж - заменяемый символ это неразрывный пробел, то есть
СтрЗаменить(Прав(Excel.Код, 11), Символы.НПП, "");
 
 
0 #5 dmitrij 11.07.2013 16:01
в отладчике получи это число (образец) и скопируй этот символ. После этого вставляешь его в СтрЗаменить и радуешься )
Ну вариантов же много .. выбирай что тебе удобнее)
 
 
0 #4 mihail 05.07.2013 19:27
в другой группе посоветовали пробелд не ставить ручками а скопипастить из отладчика тот который в 1 666 появляется, т.к. они разные бывают:)
 
 
0 #3 dmitrij 26.06.2013 20:33
У тебя же код наверняка строковый?
Переводи в строку, потом убирай лишний символ.
Кстати, из-за этого наверняка и проблема с поиском: приведи полученное из экселя значение к строке.
Строка(Excel.Код)
 
 
0 #2 mihail 26.06.2013 00:21
СтрЗаменить не работает.... В тексте убирает их, а вот в числе нет:(

Я в СКД делаю отчет и его в ексель, т.к. человеку нужен читабкльный файл а не тупо наименования... С макетом ипаться я не хочу. Т.ч. ЗначениеВСТроку Внутр не пойдет...
Или есть способ его засунуть в отчет СКД?
 
 
0 #1 dmitrij 18.06.2013 10:57
Можешь с помощью функции СтрЗаменить убрать пробелы.

Я бы рекомендовал сделать по-другому немного. В эксель грузить не код, а внутреннее представление:
ЗначениеВСтрокуВнутр(СсылкаНаЭлементСправочника).
А получать обратной функцией ЗначениеИзСтрокиВнутр.
И быстрее и надежнее.
 

You have no rights to post comments