Имя: Пароль:
1C
 
УТ 11 штрихкод заглючило
0 BlackOlga
 
20.04.11
20:20
Сегодня видимо неудачный день с УТ 11 лично у меня.
Сейчас бьюсь с проблемой, кажется простая хренотенька, а всё же непонятно...
У меня есть штрикод на товар, был 2500999, именно такой, без пробелов. Собственно счётчик набрал это количество и переключился, да плюс заботливые руки бухгалтеров. В общем теперь штрихкод представляет собой 250 001.
Подскажите пожалуйста, где поискать и как бы сделать чтоб он был 2501005 ?
1 BlackOlga
 
20.04.11
20:36
Никто не сталкивался с такой проблемой? может обработка нужна?
2 Wobland
 
20.04.11
20:39
>В общем теперь штрихкод представляет собой 250 001
что значит представляет? в каком месте? у тебя явно где-то в отчёте или ещё где нормальная строковая переменная преобразуется к такому виду
3 BlackOlga
 
20.04.11
20:45
Представляет- я имела в виду, что я выбираю какой-либо товар из номенклатуры, иду в штрихкоды номенклатуры из этой формы, и собственно мне выдаётся уже забитый штрихкод, всё бы ничего. Но! Захожу редактировать штрихкод и нажимаю "создать весовой штрихкод", у меня выскакивает вот эта хренька с пробелом, а нужно бы 201001 вот так...
Умом понимаю, что где-то сбились видимо настройки но не нахожу просто где этот штрихкод настраивается в этом плане..
4 Wobland
 
20.04.11
20:47
(3) УТ11 себе пока ставить лениво, увидеть проблему не могу. ну показывает оно тебе с пробелом, а чем это мешает? хранится-то строка всё равно без пробела. то есть не строка, а число
5 Goggy
 
20.04.11
20:48
как я понимаю товар не весовой?
6 BlackOlga
 
20.04.11
20:48
(4) Завидую) я тоже не хотела ставить)
Проблема в том что на мне это висит и меня придушат если не исправлю) вроде как это всё же влияет, раз бухгалтера всполошились и говорят что весы штрихкод не принимают такой)
7 Wobland
 
20.04.11
20:51
(6) забей, принимают. хранится в ИБ оно в правильном виде, просто так тебе показывается. ещё раз сделаю оговорку: УТ11 в глаза не видел
8 BlackOlga
 
20.04.11
20:52
(7) эх хотелось бы забить) Да, УТ 11 это ужас увидеть в первый раз)

(5) наоборот, весовой. А вот так изгаляется
9 Wobland
 
20.04.11
20:56
я вот днесь добавлял в справочник реквизит для хранения цифрового пароля. не в справочник, а в его форму. дык пришлось у поля ввода Формат применять для того, чтобы эти пробелы не мешались. а в базе-то один хрен хранится число
10 BlackOlga
 
20.04.11
21:04
(9) даа, приходится изгаляться с такими вещами, сочувствую!
меня как-то настораживают эти пробелы и раз бухгалтера забили тревогу значит не зря же это всё, что говорят не работают с пробелами весы
11 Wobland
 
20.04.11
21:06
(10) ключевое слово - "бухгалтера". в моей жизни была такая бухша, ТЗ ставила буквально так: "сделай мне вот так!", и пальцем в монитор.
возьми да проверь, делов то ;)
12 BlackOlga
 
20.04.11
21:10
(11) мда, и такое бывает) как нарвёшься)
это бы хорошо, если б быть в одном городе с этим предприятием и весами)) а так трудновато)
13 BlackOlga
 
20.04.11
21:36
Проверка как-никак а показала, что не хранится число нормальное) ирония судьбы, весы говорят что такой товар не найден, и если руками подставить чтоб было без пробела, то есть единицу поставить- тоже не найден. так что где-то настройки я не понимаю.
14 AlexNew
 
20.04.11
21:49
(13) Пробел убрала в регистре?
15 BlackOlga
 
20.04.11
22:00
(14) нет, а надо его в регистре убрать? и как это примерно сделать? просто ещё не очень понимаю как вдруг взялся пробел...как мне его ещё найти..
16 AlexNew
 
20.04.11
22:02
Открываешь регистр сведений "Штрихкоды номенклатуры", ищешь, исправляешь...
17 BlackOlga
 
20.04.11
22:21
(16) а это действительно корректно будет? нельзя никак из режима Предприятие, может какие настройки? для меня лично удивительно как при простом переходе счётчика могло вот так сильно напортачится..
так у меня же при нажатии кнопки "создать весовой штрихкод" так вылазит, а в регистре сведений вроде бы по номенклатуре идёт, или неправда?
18 AlexNew
 
20.04.11
22:26
(17) А ты где его открывать собралась?
19 Wobland
 
20.04.11
22:28
(17) честно! два раза прочитал, мысль не уловил (ну кроме желания обойтись без конфигуратора), похоже пора спать. повторюсь: забей, с пробелом - это представление такое, реальные данные есть нормальное число
20 AlexNew
 
20.04.11
22:31
(17) Такое представление у "нормального числа", к-рое строка?
21 BlackOlga
 
20.04.11
22:34
(18) не очень поняла) видимо мозг уже спит... Я открываю конфигуратор, там регистр сведений штрихкоды, а где дальше туплю...
(20) на сколько понимаю- да. Нажимаю кнопку "создать весовой штрихкод" в поле штрихкод появляется вот такая фигня с пробелом.
(19) да, спать бы) да если бы было реальное число нормальным то его бы весы приняли) а тут- нет.
22 AlexNew
 
20.04.11
22:36
(21) Расскажи мне как можно из кофигуратора интерактивно исправить что-то?
23 BlackOlga
 
20.04.11
22:40
(22) не спорю- никак, вот я и спросила а как же я подправлю штрихкод)
24 Wobland
 
20.04.11
22:41
(22) строку в заголовке самой 1Сины подойдёт? сам недавно узал.
(21) а вообще ШК вроде как строкой должен быть, не?
25 AlexNew
 
20.04.11
22:51
(24) Ты крут...
26 AlexNew
 
20.04.11
22:52
(24) Для весов - не, смотря весы какие.
27 BlackOlga
 
20.04.11
22:54
(24)это как??)
строкой-то это да...
28 AlexNew
 
20.04.11
22:56
(27) Ты б лучше ШК поправила. Про как в ЖКК написано.
29 BlackOlga
 
20.04.11
23:00
(28) а как же подправить? Я из Администрирования- корректировака регистров, но там нет регистра сведений Штрихкоды, может там выбрать "цены номенклатуры"? хотя что-то сомневаюсь.
30 Wobland
 
20.04.11
23:15
(29) вот только что ради тебя поставил УТ11 на 8.2. скажи точно, куда тыкать, чтоб увидеть
31 BlackOlga
 
20.04.11
23:16
(28) поискала в ЖКХ- там написано только как установить штрихкод, в учётной политике в начале, но в УТ11 этого ведь нету. да и это только поставить, а изменить пытаюсь из администрирования, по логике ведь так должно быть?
32 BlackOlga
 
20.04.11
23:20
(30) Спасибо огромнейшее) вовек должница)
Делаю так- заходим в раздел "Розничные продажи" - там тыкаем по документу, в нём товары у нас (я дома демку развернула), например выбираем любой из них. Жмём напротив товара лупу. дальше на закладку "штрихкоды номенклатуры". там уже есть запись,кликаем её. сверху нажимаем... стоп...
ппц... в демке в отличии от клиента- сверху нет кнопки "создать весовой штрихкод". мда. печаль.
33 Wobland
 
20.04.11
23:20
ЖКХ - это в политику ;)
34 Wobland
 
20.04.11
23:25
(32) ага, самописка! в РС ШтрихкодыНоменклатуры Штрихкод есть строка, то есть не может представляться с дополнительными пробелами
35 BlackOlga
 
20.04.11
23:32
(34) господи, за что мне это...
Сегодня клиентка уже отрубилась, завтра буду искать у неё ШтрихкодыНоменклатуры и очень ругаться. Посмотрим что из этого выйдет)
я знала что тут что-то не ладно!
36 Wobland
 
20.04.11
23:34
(35) у кого-то кривые руки?
37 Wobland
 
20.04.11
23:35
+(36) ты как-то оповести, а то мне уж очень интересно...
38 AlexNew
 
20.04.11
23:36
(34) УТ 11 самописка?
39 BlackOlga
 
20.04.11
23:37
(36) чувствую что это ещё самая маленькая проблема)
спасибо огромное что возитесь со мной и помогаете)) ^_^
Обязательно напишу что получится и кто кого всё-таки)

(38) да, кроме того никто об этом даже не заикнулся
40 Wobland
 
20.04.11
23:37
(38) у меня нет кнопки ВесовойТовар, где я не вижу?
41 Wobland
 
20.04.11
23:39
(39) на здоровье! только потому что визуально нравишься ;)
42 AlexNew
 
20.04.11
23:40
(40) Как кнопка корелируется со структурой регистра?
43 Wobland
 
20.04.11
23:42
ну, блин, не придирайся к словам. цитирую: сверху нет кнопки "создать весовой штрихкод"
44 zak555
 
20.04.11
23:52
простоботан
45 Джордж Вашингтон
 
21.04.11
00:56
Поможет

ОбновитьНумерациюОбъектов (RefreshObjectsNumbering)
Глобальный контекст
ОбновитьНумерациюОбъектов (RefreshObjectsNumbering)
Синтаксис:
ОбновитьНумерациюОбъектов(<Метаданные>)
Параметры:
<Метаданные> (необязательный)
Тип: Массив, Объект метаданных. Объект метаданного или массив объектов метаданных, для объектов которого будет выполнено обновление. Если значение параметра не указано, то обновление будет выполнено для всех типов объектов.
Описание:
Выполняет обновление номеров в соответствии с номерами, записанными в базе данных. После вызова данного метода все выданные, но не записанные номера, становятся невалидными, т.к. не гарантируется их уникальность. Данный метод разрешено вызывать только администратору системы.

Перед применением нужно отредактировать ШК с пробелом, если всё ещё есть такой...
46 BlackOlga
 
21.04.11
12:28
мда, всё оказалось намного сложнее чем думалось с начала. Печаль, совсем печаль. В регистре никак не исправить, штрихкод придётся обкоцать программно, удалить пробел между префиксом и другой частью штрихкода. пока я это себе не представляю но придётся)
47 Wobland
 
21.04.11
12:29
(46) раньше был числом, потом изменили на строку? при конвертации перенеслись с пробелами. пять минут назад занимался удалением таких пробелов ;)
48 AlexNew
 
21.04.11
12:30
(46) Почему не исправить? Да и программно, что представлять?
49 BlackOlga
 
21.04.11
12:31
(47) я уже совсем запуталась) господи, вот зачем столько мороки и переделывали эту УТ...
Я нашла в коде где есть эта самописная проклятая кнопка но пока не врубаюсь куда вставлять операцию с удалением пробелов) знаю как удалить правые-левые, а эти посередине ведь.. мдааа)
50 BlackOlga
 
21.04.11
12:31
(48) из администрирования, регистры - пробовала, там вообще нет штрикода касающегося.
а программно я новичок поэтмоу страшно даже представить)
51 Wobland
 
21.04.11
12:32
СтрЗаменить(стр, " ", "") тебя спасёт
52 BlackOlga
 
21.04.11
12:42
(51) спасибочки, попробую сейчас) как только пойму как мне это запихать) тут всего понаписано до меня чёрт ногу сломит.
53 Wobland
 
21.04.11
12:43
(52) ща, погодь, доваяю обработку, покажу
54 BlackOlga
 
21.04.11
12:44
(53) Ты мой спаситель!!)) :=*
пока пытаюсь разобраться что тут вообще и где должно быть)
55 Wobland
 
21.04.11
12:57
да... всё сложней оказалось, чем я думал. в модуле набора записей у РС проверка есть на уникальность. временно пришлось отключить, чтобы записать дал
56 Wobland
 
21.04.11
12:58
ах, да. сам код (создай новую внешнюю обработку):
Процедура КнопкаВыполнитьНажатие(Кнопка)
   ШК=РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
   ШК.Прочитать();
   Для й=0 По ШК.Количество()-1 Цикл
       ШК[й].Штрихкод=СтрЗаменить(ШК[й].Штрихкод, " ", "");
   КонецЦикла;
   ШК.Записать();
КонецПроцедуры
57 Wobland
 
21.04.11
12:59
процедура убирает все пробелы в штрих-кодах. это - то, что надо, я так понимаю?
58 BlackOlga
 
21.04.11
13:06
ого, ещё и не даёт! попробую помучаться чтоб и у меня давал записать)

Спасибо огромное за код) просто поинтересуюсь, сама чуть чуть писала подобное, а зачем й ?) может быть использовать

Пока не ШК.Количество()-1 Цикл

? или так не пойдёт?)
вот попробую, по видимости именно то самое что надо) сокровище кодовое)
59 Wobland
 
21.04.11
13:10
Пока не ШК.Количество()-1 Цикл
не будет отрабатывать вообще (если количество<>1, а если ровно 1, то из цикла не выйдет)
й - как замена i
и нам же надо запись по номеру получать
60 Wobland
 
21.04.11
13:11
для отключения проверки я комментарил 40ю строку в модуле набора записей. можно ещё и 39ю ;)
                   //Сообщить("Штрихкод: " + Выборка.ШтрихКод + " уже имеет владельца """ + СокрЛП(Выборка.Владелец) + """.");
                   //Отказ = Истина;
61 AlexNew
 
21.04.11
13:17
(55) Чиво? Отключить у регистра сведений уникальность измерений? Почитай в СП про Записать(). Там аргументы есть.
62 BlackOlga
 
21.04.11
13:18
(59) спасибо, поняла) просто необычно видеть й так, я обычно использовала всякие извращения свои чтоб перебирать элементы)
попробую сделать, поглядим что выйдет)

(61) а перед записью нельзя такое сделать, например?)
63 Wobland
 
21.04.11
13:22
(61) по умолчанию Замещать=Истина. не взлетает, ибо проверка в модуле набора записей делается
64 AlexNew
 
21.04.11
13:34
А там нет условия, Если ОбменДанными.Загрузка = Истина Тогда Возврат КонецЕсли;
65 Wobland
 
21.04.11
13:36
(64) это ты о чём?
66 AlexNew
 
21.04.11
13:39
О ПередЗаписью()
67 Wobland
 
21.04.11
13:41
есть условие
68 BlackOlga
 
21.04.11
14:13
Мдя-с, пока что у меня не получилось) обработку сделала, запустила- но ничего не произошло. в обработке писала что это всё должно происходить НаСервере.
или я что-то забыла
69 Wobland
 
21.04.11
14:22
70 Wobland
 
21.04.11
14:23
кстати, в УТ11 нет той проверки на уникальность ;)
71 BlackOlga
 
21.04.11
14:30
(69) спасибище) Как раз начало я и забыла, а остальное так же)
что-то я уже думаю, что УТ сговорилось против меня- всё равно пробел не исчез там где он был там и есть.. перезагружалась, всё равно есть.
72 Wobland
 
21.04.11
14:32
тип какой у штрихкода?
73 Wobland
 
21.04.11
14:32
у меня строка и всё отработало нормально
74 BlackOlga
 
21.04.11
14:34
И у меня строка... что-то тут не то. Может я совсем уже мозг отсидела- штрихкод это измерение, в регистре сведений ШтрихкодыНоменклатуры, тип этого измерения- строка.
75 Wobland
 
21.04.11
14:36
(74) аналогично. отладчиком пройдись и увидь, что оно тебе где-то не выполняется
76 BlackOlga
 
21.04.11
15:19
Поняла!!) но от этого не шибко легче...
в общем надо не набор записей а менеджер записи, и записать использовать в цикле- каждую же запись надо перезаписывать где пробелы.
вот только ругается на ШК.Количество()-1
77 Wobland
 
21.04.11
15:44
плин, а как у меня это отработало?
78 BlackOlga
 
21.04.11
15:45
(77) вот и я удивляюсь) но хз, у меня же доработанная и кривая вся) теперь думаю как цикл заменить, обойти все элементы.. может использовать "Для каждого".... но для каждого чего тоже не понятно.
79 Wobland
 
21.04.11
15:51
отладчик применяла? смотрела, что
1) в процедуру заходит;
2) значение после СтрЗаменить() исправляется;
3) на Записать() не ругается?
80 BlackOlga
 
21.04.11
15:54
Ругаться ни на что не ругается- он делает набор записей, только перебирает и всё, записывает получается ничего потому что записать не в цикле. Остальное всё проверила)
теперь мне вопрос как сделать перебор просто последовательно записей, вот голову уже сломала) и "количествоСтрок" пыталась, всё равно не хочет- на количество строк вообще ругается.
81 Wobland
 
21.04.11
16:12
пойду сдую пыль с умной книжки, никуда не уходи ;)
82 BlackOlga
 
21.04.11
16:14
(81)я пока пробую напрягаю блондинистые мозги))
83 Wobland
 
21.04.11
16:24
вот тебе с менеджером

&НаСервере
Процедура СделатьНаСервере2()
   Запись=РегистрыСведений.ШтрихкодыНоменклатуры.СоздатьМенеджерЗаписи();
   Запрос=Новый Запрос;
   Запрос.Текст=
   "ВЫБРАТЬ
   |    ШтрихкодыНоменклатуры.Штрихкод
   |ИЗ
   |    РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры";
   Выборка=Запрос.Выполнить().Выбрать();
   Пока Выборка.Следующий() Цикл
       Запись.Штрихкод=Выборка.Штрихкод;
       Запись.Прочитать();
       Если Запись.Выбран() Тогда
           Запись.Штрихкод=СтрЗаменить(Запись.Штрихкод, " ", "");
           Запись.Записать();
       КонецЕсли;
   КонецЦикла;
КонецПроцедуры
84 Wobland
 
21.04.11
16:24
+(83) я проверял! у меня опят ьработет
85 BlackOlga
 
21.04.11
18:58
(84) и всё же я с помощью благословения начальства, пинков клиента и вашей помощью дошла до истины))
в общем всё надо было делать в модуле регистра сведений и дело в символе-разделителе порядков, который надо было хитроумно вырезать)
на веки вечные это запомню)
86 Wobland
 
21.04.11
18:59
проявилась таки! ;)
давай подробней прой символ-разделитель, не пробел что-ли?
87 BlackOlga
 
21.04.11
19:03
фух, только сейчас вся эпопея кончилась и начнётся следующая))
Не пробел как не удивительно, поэтому у меня и не получилось) этот символ технический разделяет тысячи от миллионов и тд..В общем я долго ломала голову как мне и что сделать, вошла в процедуру куда мы заходим если кликаем на проклятущей кнопке "штрихкод весовой.." и там получился в общем такой текст:

Запрос = Новый Запрос("
   |ВЫБРАТЬ
   |    МАКСИМУМ(ПОДСТРОКА(ШтрихкодыНоменклатуры.Штрихкод, 3, 5)) КАК Код
   |ИЗ
   |    РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
   |ГДЕ
   |    ШтрихкодыНоменклатуры.Штрихкод ПОДОБНО ""25" + "_____""
   |");

   Выборка = Запрос.Выполнить().Выбрать();
   Выборка.Следующий();
   
   ОписаниеТипаЧисла = Новый ОписаниеТипов("Число");
   ЗначениеКодаЧислом = ОписаниеТипаЧисла.ПривестиЗначение(Выборка.Код);
   ЗначениеКодаЧислом = Мин(ЗначениеКодаЧислом + 1, 9999999);
   ЗначениеКодаЧислом    =СтрЗаменить( Формат( ЗначениеКодаЧислом, "ЧРГ='-'"), "-", "");
   Код = "25"+Прав("00000"+ЗначениеКодаЧислом, 5);
   
   Возврат Код;


с Этим символом мучались- сначала поставили заместо него минус а потом удалили)
88 Wobland
 
21.04.11
19:08
это что за ивзрат? 7 символов на ШК? плюс левый символ не вижу
89 BlackOlga
 
21.04.11
19:10
(88) этот изврат писал тот кто дорабатывал УТ11 до меня, найти бы ещё)
а вот дописано сегодня с кровью и стонами:
 ЗначениеКодаЧислом    =СтрЗаменить( Формат( ЗначениеКодаЧислом, "ЧРГ='-'"), "-", "");

Заказчик просил - получил)
90 Wobland
 
21.04.11
19:15
добавиь "единицу" к подстроке с 3го по 7й символ? и потом один хрен отрезать первые два символа. на зачем? вот именно так должно работать, если убрать СтрЗаменить()...
91 Wobland
 
21.04.11
19:16
вы ШК сами генерите? в своём формате?
92 Wobland
 
21.04.11
19:18
и, кстати, минус должно было бы визуально видеть хорошо
93 Wobland
 
21.04.11
19:28
про +1 понятно - следующий. кстати, на 9999999 споткнётся. а вот в Код = "25"+Прав("00000"+ЗначениеКодаЧислом, 5); следовало применять Формат(). только откуда у тебя там минус? из региональных настроек?
94 BlackOlga
 
21.04.11
21:38
Совсем вопросами закидал) Я в этом чужом коде мало что могу понять, только что код наш должен начинаться с 25, что было пожеланием заказчика, ну и ещё по мелочи)
Я уж как только сегодня не пробовала, но именно вот этот вариант единственный заработал)
95 AlexNew
 
21.04.11
21:44
(91) Весы генерят (не все), а они туда номер ячейки засовывать должны. Люблю теоретиков.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший