|
как можно связать регистры КонтактнаяИнформация и АдресныйКлассификатор | ☑ | ||
---|---|---|---|---|
0
LivingStar
22.07.13
✎
10:53
|
Можно ли свернуть регистры КонтактнаяИнформация и АдресныйКлассификатор для корректной выборки информации, то есть без повторяющихся записей, по контрагенту что в КонтактнаяИнформация.Объект? Связвл по индексу, но этого мало:
|
|||
1
cw014
22.07.13
✎
10:53
|
Чего?
|
|||
2
LivingStar
22.07.13
✎
10:54
|
(0+) связать, нужено поле код из адресного классификатора
|
|||
3
cw014
22.07.13
✎
10:56
|
Ну связывай
|
|||
4
Wobland
22.07.13
✎
10:57
|
можно
|
|||
5
LivingStar
22.07.13
✎
10:59
|
(3) выходит что попало
могу связать только по индексу других подходящих полей для связи не вижу (4) кроме индекса по каким полям? |
|||
6
mikecool
22.07.13
✎
10:59
|
(5) АК.представление = КИ.значение
|
|||
7
mikecool
22.07.13
✎
11:00
|
+6 вернее выразить(АК.представление как строка(255)) = выразить(КИ.значение как строка(255))
|
|||
8
Wobland
22.07.13
✎
11:00
|
а регистр учитывается?
|
|||
9
LivingStar
22.07.13
✎
11:02
|
(6) в регистре адресный классификатор нет поля представление
|
|||
10
mikecool
22.07.13
✎
11:03
|
(9) ну так собери его представление, как функция делает
|
|||
11
LivingStar
22.07.13
✎
11:04
|
(9+) там информация кроме индекса в адрессном классификаторе и поля1 в контактной информации более никак не совместимая, я ошибаюсь?
|
|||
12
SherifSP
22.07.13
✎
11:05
|
(0) Мб условие на тип в контактной информации наложи
|
|||
13
LivingStar
22.07.13
✎
11:06
|
(12) выбираю по одному индексу, хочу достать код из адресного классификатора, но без повторяющихся записей
ВЫБРАТЬ КонтактнаяИнформация.Объект, КонтактнаяИнформация.Тип, КонтактнаяИнформация.Вид, КонтактнаяИнформация.Представление, КонтактнаяИнформация.Поле1, АдресныйКлассификатор.Наименование, АдресныйКлассификатор.Индекс, АдресныйКлассификатор.АльтернативныеНазвания, АдресныйКлассификатор.Сокращение, АдресныйКлассификатор.ТипАдресногоЭлемента ИЗ РегистрСведений.АдресныйКлассификатор КАК АдресныйКлассификатор ПОЛНОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО КонтактнаяИнформация.Поле1 = АдресныйКлассификатор.Индекс ГДЕ КонтактнаяИнформация.Поле1 = "633244" И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес) И КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресКонтрагента) |
|||
14
LivingStar
22.07.13
✎
11:09
|
(6) Не пойму от куда у вас представление в адресном классификаторе? Его от туда собирать то не из чего... И что за заначение в контактной информации...
|
|||
15
cw014
22.07.13
✎
11:13
|
Чего ты хочешь?
|
|||
16
LivingStar
22.07.13
✎
11:15
|
(15) В контактной информации есть объект, это контрагент, в представлении его едрес, я хочу из адресного классификатора выбрать по этому контрагнету значение содержащееся в поле код из контактной информации, но связать могу только по индексу...
|
|||
17
LivingStar
22.07.13
✎
11:17
|
(15) получается выборка с кучей повторяющейся информации, вот увязать бы левым соединением с контактной информацией адрессный классификатор.
|
|||
18
cw014
22.07.13
✎
11:19
|
Какая куча повторяющейся информации у тебя вылазиет?
Сделай запрос: ВЫБРАТЬ * ИЗ РегистрСведений.АдресныйКлассификатор ГДЕ АдресныйКлассификатор.Индекс = "633244" и посмотри сколько и чего у тебя выдаст |
|||
19
hhhh
22.07.13
✎
11:23
|
(16) ну как в типовой формируется адрес, он же из адресного классификатора берется. Просто пройдись отладчиком там и посмотри, откуда она что берет.
|
|||
20
LivingStar
22.07.13
✎
11:24
|
(18) несколько десятков записей где в поле наименование наименования улиц, а так же номера домов через запятую, или отдельно
|
|||
21
LivingStar
22.07.13
✎
11:25
|
(19) Адрес берется из контактной информации КонтактнаяИнформация.Представление. Формируется из перечня полей, Поле1, Поле2, Поле3...
|
|||
22
LivingStar
22.07.13
✎
11:26
|
(19) мне нужно извлеч код, из адрестного классификатора, такие значения 5 400 800 006 300 020 003 000 000
|
|||
23
cw014
22.07.13
✎
11:26
|
(20) А какая из этих нескольких десятков записей тебе нужна?
|
|||
24
LivingStar
22.07.13
✎
11:29
|
(22) как его явязать с контактной информацией не пойму, есть только индекс для связи
(23) фиг егог знает, может та где номер дома попадается, так он попадается в нескольких местах, или по названию улицы, говорю какая то информация не совсем подходящая для связи с КонтактнойИнформацией |
|||
25
LivingStar
22.07.13
✎
11:32
|
(23) вот что значит этот код из АдресногоКлассификатора
// Маска СС РРР ГГГ ППП УУУУ ДДДД КККК АА // // СС - код региона // РРР - код района // ГГГ - код города // ППП - код населенного пункта // УУУУ - код улицы // ДДДД - код дома // КККК - код квартиры // АА - код актуальности |
|||
26
ИС-2
naïve
22.07.13
✎
11:34
|
(0) какая глобальная задача? Если приведение адресов по кладру, то я этим сейчас занимаюсь.
Единым запрос все равно не получиться по представлению все сделать. В начале надо убрать все сокрщения (пр Ижевск г.-> Ижевск), разложить Представление на подстроки (есть функция РазложитьСтрокуВМассив или как-то так), затем раскидать по полям (самое ресурсоемкое). А так в Кладре есть реквизит ТипАдресногоЭлемента, он отличается смещением на 1 от поля. Делай по нему |
|||
27
cw014
22.07.13
✎
11:35
|
(24) Ну ты описал задачу примерно так: Мне нужно по индексу найти классификатор, их там много, но мне нужен один, хотя фиг знает какой
|
|||
28
LivingStar
22.07.13
✎
11:41
|
(26) То есть одним запросом никак не получится??? Я вот и вижу что это так... Думаю как быть.....Ну тогда я вывожу все построчно из запроса все равно, при выводе тогда заполнять это поле....
Остается понять как написать функцию... Реквизит ТипАдресногоЭлемента есть там целое число, чем он может помочь, и как? |
|||
29
LivingStar
22.07.13
✎
11:50
|
нащел вот эту функцию ПолучитьИндекс() там как раз идет разбор
|
|||
30
LivingStar
22.07.13
✎
11:53
|
(26) я работаю в конфигурации УТ, а вы?
вот эта функция если я не ошибаюсь возвращает этот код из РС.АдресныйКлассификатор // Функция определяет индекс по переданным региону, району, городу, населенному пункту, // улице, дому и корпусу // // Параметры: // НазваниеРегиона - название региона( с сокращением) // НазваниеРайона - название района( с сокращением) // НазваниеГорода - название города( с сокращением) // НазваниеНаселенногоПункта - название населенного пункта( с сокращением) // Улица - название улицы ( с сокращением) // НомерДома - номер дома, для которго необходимо получить индекс // НомерКорпуса - номер корпуса // // Возвращаемое значение: // Строка - шестизначный почтовый индекс // Функция ПолучитьИндекс(Знач НазваниеРегиона, Знач НазваниеРайона, Знач НазваниеГорода, Знач НазваниеНаселенногоПункта, Знач НазваниеУлицы, Знач НомерДома, Знач НомерКорпуса) Экспорт |
|||
31
LivingStar
22.07.13
✎
11:54
|
(30+) а не она индекс получает
|
|||
32
LivingStar
22.07.13
✎
12:09
|
может подскажете тогда есть ли в УТ функция готовая которая форвращает код из адресного классификатора по переданным в неё данным?
|
|||
33
hhhh
22.07.13
✎
12:17
|
(32) такой точно нет. Потому что в УТ она на фиг не нужна.
|
|||
34
zva
22.07.13
✎
12:54
|
(0) А ты уверен, что после обновления КЛАДР в 1С, все коды вида СС РРР ГГГ ППП УУУУ ДДДД КККК АА не поедут? Там наверняка индексация после загрузки идет
|
|||
35
ИС-2
naïve
22.07.13
✎
13:10
|
(30) То же УТ 10.2.
Могу скинуть обработку. Но возможно ее надо будет допиливать т.к делал под Удмуртию и УТ 10.2 . По этому номеру можно определить по Полю1 или Полю2 и т.л надо делать связи. Посмотрел по темам - задачи идут общие. Я тоже вожусь с КЛАДРом, чтобы можно было нормально определять географические координаты. Если интересно более подробно, то аська в профиле. |
|||
36
LivingStar
22.07.13
✎
13:16
|
(35) у меня 10.3
(34) а они к местности не привязаны? |
|||
37
LivingStar
22.07.13
✎
13:17
|
(34) поедут не поедут а привязать их нужно
|
|||
38
LivingStar
22.07.13
✎
13:17
|
(37+) вернее выбрать
|
|||
39
zva
22.07.13
✎
13:24
|
(37) Ну допустим привязал. Сейчас к конрагенту приявязана улица Абазова с кодом УУУУ 0001. Добавилась в регионе улица Абабаевская, после обновления кладра ее внутренний код УУУУ либо добавится в конец либо станет 0001. Если будет вариант 2, то к контрагенту будет привязана не та улица.
|
|||
40
ИС-2
naïve
22.07.13
✎
13:27
|
задача такая по имеющемуся адресу (путь он введен по КЛАДРу с разбивкой по полям) получить значение измерения Код в РС АдресныйКлассификатор?
|
|||
41
ИС-2
naïve
22.07.13
✎
13:28
|
(39) этот вопрос проще задать разработчикам КЛАДРа - будет меняться код у уже имеющихся или нет. А не гадать на кофейной гуще
|
|||
42
LivingStar
22.07.13
✎
13:29
|
(40) Ну в принципе да, по адресу контрагента получить значение КОД РС.АдресныйКлассификатор к нему относящееся
|
|||
43
hhhh
22.07.13
✎
13:31
|
(41) ну просто взять две версии, за 2005-й год например, и за 2013-й. И сравнить. Разработчиков имхо гораздо дольше придется отлавливать.
|
|||
44
ИС-2
naïve
22.07.13
✎
13:34
|
(42) хм, интересная идея, но я лучше по отдельным реквзитам у координаты раскидаю города и улицы.
А так есть (в УТ 10.2) функция в форме выбора РС Кладра. Она по коду получает выше стоящих родителей. Надо ее либо очень тупо в цикле использовать (запросом находим улицы с нужным названием, по функции получаем города и районы, оставляем нужный) // Функция формирует строку с полным названием адресного элемента, // которое состоит из наименования и сокращения самого адресного // элемента и его "родителей" // // Параметры: // КодЭлемента - Код адресного элемента. // // Возвращаемое значение: // Название адресного элемента и его родителей через запятую // Функция ПолучитьПолноеНазвание(Знач КодЭлемента) Экспорт |
|||
45
hhhh
22.07.13
✎
13:35
|
(42) еще не забудь адрес привести к правильному виду. Чтобы реально было 8 или 9 запятых.
|
|||
46
LivingStar
22.07.13
✎
13:37
|
(44)(45) Хотелось бы надежный функционал продумать, пока у меня нет соображений, мотивации к действию...
|
|||
47
ИС-2
naïve
22.07.13
✎
13:43
|
(46) будет слишком много нюансов, чтобы на лету получить по контрагенту полный адрес из кладра.
Да и чем регистр Контактная информация не устраивает? Главное, чтобы был путево заведен. Я так и не понял, за чем это надо связывать КИ и КЛАДР? Получиться, что они будут дублировать друг друга |
|||
48
LivingStar
22.07.13
✎
13:44
|
(47) Я хотел извлечь одним запросом, а кроме как к контактной информации не нащел к чему ещё привязать адресный классификатор.
|
|||
49
LivingStar
22.07.13
✎
13:46
|
(48+) получается сейчас нужно писать функцию, и получать код адресного классификатора по представлению адреса контрагента из контактной информации
а как из регистра контактная информапция мне получить нужный мне код? он же хранится только в регистре сведений адресный классификатор |
|||
50
ИС-2
naïve
22.07.13
✎
13:51
|
(49) Так и не понял так будет использоваться код из КЛАДРа.
Если не надо переделывать старых контрагентов, то можно допилит конфу - при вводе КИ сохранять Код Кладра выбранной улицы |
|||
51
ИС-2
naïve
22.07.13
✎
13:52
|
и в люом случае будет проблема с домами. В базовом кладре их нет
|
|||
52
LivingStar
22.07.13
✎
13:52
|
(50) вот такие к примеру значения: 5 400 800 006 300 020 003 000 000
|
|||
53
LivingStar
22.07.13
✎
13:53
|
как получать это имея адрес контрагента в представлении контактной информации я так и не понял
|
|||
54
LivingStar
22.07.13
✎
13:53
|
(50) код из регистра сведений адресный классификатор
|
|||
55
Лодырь
22.07.13
✎
13:56
|
Теперь вы понимаете в каком городе самая лучшая трава?
|
|||
56
LivingStar
22.07.13
✎
13:58
|
(55) так это всего лишь пример значения
|
|||
57
hhhh
22.07.13
✎
14:18
|
(53) ну, читай (19)
|
|||
58
mistеr
22.07.13
✎
14:44
|
(53) Ты хочешь автоматически привязать к КЛАДРу адреса, введенные вручную, я правильно понял?
Это не возможно, не трать зря время/чужие деньги. Лучше сразу делай полуавтоматический режим. Ручной работы будет процентов 15-25%. |
|||
59
ИС-2
naïve
22.07.13
✎
16:27
|
(58) согласен. Как указывать остановочные комплексы, АЗС?
|
|||
60
LivingStar
23.07.13
✎
05:04
|
(58) У меня нет задачи в привязке к кладру адресов. Есть задача получения кода адресного классификатора, который относится к контрагенту в печатной форме, точнее к его адресу, что в представлении контактной информации я вывожу.
Из всего выше рассмотренного есть определенные, конкретные, креативные шаги к решению задачи? |
|||
61
LivingStar
23.07.13
✎
05:23
|
(19)(57) Адрес берется из представления контактной информации регистра сведений КонтактнаяИнформация, туда он собирается из скрытых полей этого же регистра, куда помещается частями обработкой. Из адрестного классификатора ничего не берется как я понимаю, где пройтись отладчиком?
В (19) не совсем то написано? |
|||
62
Лодырь
23.07.13
✎
06:13
|
Если я верно понимаю, ты хочешь вычислить некую хешфункцию от адреса с помощью классификатора. Вопрос: а нафейхуа?
|
|||
63
LivingStar
23.07.13
✎
06:16
|
(62) Я уже несколько раз написал что мне нужно, почему не ясно это? К адресу контрагента что в представлении контактной информации должен относится код адрестного классификатора из соответствующего регистра сведений. Его мне и надо получить. Нужно это для вывода в отчет, поле там такое есть!!!
|
|||
64
LivingStar
23.07.13
✎
06:17
|
(63) Как его получить, не представляю, перибираю имеющиеся функции в модуле контактная информация, но ничего подходящего не могу найти.
|
|||
65
Лодырь
23.07.13
✎
06:32
|
Ну весьма подробная документация по КЛАДРу есть на gnivc.ru
Дерзай. |
|||
66
LivingStar
23.07.13
✎
06:56
|
(65) да какая там подробная информация?
как в ут то извлечь этот код по адресу, ниужели никто не занимался этим? |
|||
67
cw014
23.07.13
✎
07:28
|
(66) Давай займусь, за определнное вознаграждение
|
|||
68
Мимохожий Однако
23.07.13
✎
07:34
|
Уникальность записей регистра сведений определяется измерениями.
У ЗАПИСЕЙ НЕТ КОДОВ. Это азбука. В РС "Адресный классификатор" таких измерений 7. А вот в РС "Контактная информация" таких измерений 3. Ты пытаешься взять то чего нет и бьешься как рыба об лёд. ИМХО, у твоей задачки в данной постановке решения нет. Либо ты просто неправильно понял задачку. |
|||
69
LivingStar
23.07.13
✎
08:08
|
(68) в колонке GUID не код Адресного классификатора ?
http://i072.radikal.ru/1307/fa/1417fe52f154.jpg |
|||
70
cw014
23.07.13
✎
08:10
|
(69) Мое предложение еще в силе )
|
|||
71
LivingStar
23.07.13
✎
08:16
|
(70) да не нужно мне ваше предложение!!!
|
|||
72
Мимохожий Однако
23.07.13
✎
08:30
|
(69)Нет.
ЗЫ.Ты не мне загадки задавай, а посмотри как хранится информация в регистрах сведений и как связан Адресный классификатор с Контрагентом. ИМХО, никак. |
|||
73
vyaz
23.07.13
✎
08:31
|
(72) да
(69) в первой строке рп Колывань, индекс 633161 ? |
|||
74
Мимохожий Однако
23.07.13
✎
08:36
|
(73)Какие Ваши доказательства? ))
|
|||
75
LivingStar
23.07.13
✎
08:37
|
(72) никак не связан, от куда тогда брать это значение что в колонке GUID ?
|
|||
76
vyaz
23.07.13
✎
08:38
|
(74) в кладр заглянул )))
|
|||
77
Мимохожий Однако
23.07.13
✎
08:40
|
(75)Ответ "Ниоткуда" тебя не устраивает. см (68) еще раз, еще раз, еще раз. Если ты создашь реквизит у Контрагента, или реквизит у накладной,в котором будешь записывать КОД, тогда да. А так... "Ниоткуда".
|
|||
78
Мимохожий Однако
23.07.13
✎
08:41
|
(76) Будем считать твои комментарии как моральная поддержка ТС.
|
|||
79
vyaz
23.07.13
✎
08:43
|
(77,78) в случае автора это действительно код из кладра, и получить его можно запросом связав регистры классификатора и КИ (но только в случае если все адреса пробиты по кладру), но так как задача тупая и автор невежда, то помогать я ему небуду))))
|
|||
80
LivingStar
23.07.13
✎
08:45
|
(79) так я связывал ничего не получается
я не знаю чей там индекс, это информация для примера была приведена |
|||
81
vyaz
23.07.13
✎
08:46
|
(80) ип иванова там индекс, который 100 кг колбасы армавирской заказал к себе в колывань))
|
|||
82
Мимохожий Однако
23.07.13
✎
08:47
|
(80)Каким полем (реквизитом) связывал? Нет взаимосвязи между РС "Адресный классификатор" и справочником "Контрагенты".
|
|||
83
LivingStar
23.07.13
✎
08:48
|
(82) я связывал с регистром сведений контактная информация по индексу
|
|||
84
LivingStar
23.07.13
✎
08:49
|
(83+) как ещё увязать что бы получить одну запись незнаю
|
|||
85
Мимохожий Однако
23.07.13
✎
08:53
|
(84)Никак. Только добавить реквизит КодАдресногоКлассификатора и запустить обработку, которая при правильном заполнении адреса, заполнит это поля. Остальное ручками.
|
|||
86
LivingStar
23.07.13
✎
08:53
|
получить нужно вот это в итоге, по каждому контрагенту или его адресу:
http://i023.radikal.ru/1307/54/82a05e3527f1.jpg |
|||
87
LivingStar
23.07.13
✎
08:57
|
может я что то не догоняю и можно все же получить его???
хочу тут разобрать функцию ИспользоватьИндекс() в неё вроде передаются наименования регионов, городов, улиц и тд, а она возвращает кода... |
|||
88
LivingStar
23.07.13
✎
08:57
|
(87+) ПолучитьИндекс() то есть
|
|||
89
zva
23.07.13
✎
09:03
|
(69) У тебя на на картинке GUID на единицу меньше номера документа. Это явно GUID документа в самописной базе. Зачет ты всем мозг адресным классиыикатором выносишь? У тебя в колонке один контрагент с одним адресом стоит и GUID везде разный.
|
|||
90
LivingStar
23.07.13
✎
10:02
|
(89) да это может опечатка просто, не может а так и есть, не может у одного контрагента разный код адресного элемента быть
|
|||
91
zva
23.07.13
✎
10:13
|
(90) ты понимаешь, что в каждом обновлении КЛАДР его внутриние GUID не сохраняются. Что по твоему GUID в итоге будут получать абсолютно левые адреса те, у кого стоит не та версия КЛАДР. Нужен адрес - пиши адрес.
|
|||
92
Мимохожий Однако
23.07.13
✎
10:36
|
ОФФ: "Товарищ не понимаИт.."
|
|||
93
LivingStar
23.07.13
✎
10:49
|
(91) мне по барабону что там будет, мне нужно это сделакть, про грандиозное планирование разработки никто не говорил
ну или нужно рассмотреть его тогда ну а все же вывбрать то это можно? один код адрестного элемента по контрагенту? |
|||
94
hhhh
23.07.13
✎
11:17
|
(93) ну, сделай отдельный регистр сведений, два поля "Адрес", "Код". Зачем тебе Кладр, там же миллионы записей, а тебе нужно из них 100. Ну может 200.
|
|||
95
zva
23.07.13
✎
11:24
|
(93) ну пиши везде одно значение 5 400 800 006 300 020 003 000 000, в чем проблема? Не связан никак адрес контрагента с адресным классификаторм. Ты адресный классификатор в базе вообще очистить можешь, при этом адрес контрагента у тебя останется с разделителями в правильном формате кладр
|
|||
96
LivingStar
23.07.13
✎
11:30
|
(95) в смысле гда заполнены РЕГИОН, РАЙОН, ГОРОД,и тд. ?
так может по этим значениям получать набор цифр? функциями какими либо преобразования? задача взята на подобие УПП эта |
|||
97
LivingStar
23.07.13
✎
11:58
|
(94) так как код то получить7
(95) каждому контрагенту по адресу различному должно быть уникальное значение (89) KLADR типовой |
|||
98
Infsams654
23.07.13
✎
12:51
|
(97) сколько можно ? (26) уже ответил
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |