Имя: Пароль:
1C
1С v8
Перенос из ТиС 7.7 в 8.3 БП
0 Tumakota
 
22.02.18
13:28
Значение = Лев(Источник.ЮрФизЛицо.ИНН, Найти(Источник.ЮрФизЛицо.ИНН, "/") - 1);

вот так ищб ИНН перед выгрузкой, но серовно не выгружает в 8 и в 7 ошибку не какую не выдает, подскажите что не так прописываю
1 Ц_У
 
22.02.18
13:36
(0) а что должно получиться?
2 Tumakota
 
22.02.18
13:37
в 8 в поле ИНН должен загрузится ИНН, но оно остается пустым
3 Злопчинский
 
22.02.18
13:37
Овнокод
4 Злопчинский
 
22.02.18
13:38
В тис никаких особых проверок на правильность инн нет
5 Tumakota
 
22.02.18
13:38
(3) Спасибо за ответ, если овнокод, подскажи другой ане просто комментируй
6 Злопчинский
 
22.02.18
13:38
Поэтому в поле заводится как угодно и что угодно
7 Злопчинский
 
22.02.18
13:39
(5) используйте функцию из глобального модуля типа
ГлПолучитьИНН
8 Tumakota
 
22.02.18
13:39
У меня в ТиС заведено все через этот слэш по которому ищю, все ИНН и КПП заведены так, но он и ошибок при выгрузке не дает и при загрузке не чего вообще не грузит
9 Злопчинский
 
22.02.18
13:40
(5) это не снеговик, деточка, тут думать надо ;-) ну и конфигу знать
10 Tumakota
 
22.02.18
13:42
(9) Спасибо за совет, знал бы 7 не писал бы здесь
11 Злопчинский
 
22.02.18
13:42
(8) у физиков и ип  - КПП нет
Ты точно у них инн из 12 цифр завершаешь слешем?
12 Tumakota
 
22.02.18
13:43
(8) Я выгружаю по 1 контрагенту, где точно все правильно заполнено и 12 после 12 стоит слэш, но он даже по нему не грузит, все загружает кроме ИНН и КПП
13 Злопчинский
 
22.02.18
13:43
Если совсем все плохо - впихни перед этим оператором
Сообщить(....инн)
14 Злопчинский
 
22.02.18
13:46
Ну и вдогонку диагноз "не выгружает" на мой взгляд не имеет никакого отношения к приведенному коду
Удостоверься что значение вычисляется правильно.
А уже потом переходит к постановке диагноза авгрузки
15 Tumakota
 
22.02.18
15:33
Процедура отрабатывает нормально и выводит нужные данные, но когда в КД пишу это то она та не записывает в это поле не чего
16 hhhh
 
22.02.18
16:21
(15) модуль выгрузки в обработку записываешь?
17 Tumakota
 
22.02.18
16:26
(16) Всмысле, этот код проверил обработкой, написали обработку по контрагенту, вывели он сообщил ИНН, а в КД перед выгрузкой засовываю
18 hhhh
 
22.02.18
16:30
(17) ну для семерки, модуль выгрузки из КД копируешь в обработку обмена.
19 Tumakota
 
22.02.18
16:51
(18) Ну так написали внешнюю обработку там все работает, выводит в сообщении то что надо строку с ИНН, а в КД не отрабатывает эту процедуру передает пустое значение, проверил на одном контрагенте на котором все заполнено
20 Tumakota
 
22.02.18
17:27
Самое интересное и типовой код не отрабатывает из типовых правил

Если Источник.ЭтоГруппа() = 0 Тогда
    Если Найти(Источник.ЮрФизЛицо.ИНН, "\") <> 0 Тогда
        Значение = Лев(Источник.ЮрФизЛицо.ИНН, Найти(Источник.ЮрФизЛицо.ИНН, "\") - 1);
        
    Иначе
        Значение = СокрЛП(Источник.ЮрФизЛицо.ИНН);
        
    КонецЕсли;
Иначе
    Отказ = 1;
    
КонецЕсли;
21 Tarlich
 
22.02.18
18:08
как я сделал
Если (ВидСправочника8 = "Контрагенты") и (Ссылка.ЭтоГруппа() = 0) Тогда
        Если СтрДлина(СокрЛП(Ссылка.ЮрФизЛицо.ИНН)) > 5 Тогда
            
            КонтрагентИНН = "";
            КонтрагентКПП = "";
            
            НомерРазделителяИНН = Найти(Ссылка.ЮрФизЛицо.ИНН,"/");
            Если НомерРазделителяИНН = 0 Тогда
                НомерРазделителяИНН = Найти(Ссылка.ЮрФизЛицо.ИНН,"\");
            КонецЕсли;
            Если НомерРазделителяИНН = 0 Тогда
                КонтрагентИНН = Ссылка.ЮрФизЛицо.ИНН;
            Иначе
                ИНН77 = СокрЛП(Ссылка.ЮрФизЛицо.ИНН);
                КонтрагентИНН = Лев(ИНН77,НомерРазделителяИНН-1);
                КонтрагентКПП = Прав(ИНН77,СтрДлина(ИНН77)-НомерРазделителяИНН);
            КонецЕсли;
            
            НайденныйЭлемент = Справочники[ВидСправочника8].НайтиПоРеквизиту("ИНН",КонтрагентИНН);
            Если НайденныйЭлемент <> Справочники[ВидСправочника8].ПустаяСсылка() Тогда
                ИскатьПоКоду = Ложь;
                ИскатьПоНаименованию = Ложь;
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
22 Tumakota
 
22.02.18
19:06
(21) Ваш код тоже не помог, если можете помочь могу дать удаленку
23 Злопчинский
 
22.02.18
20:32
То есть вставить отладочные сообщения в нужном месте и нужном контексте исполнения - вообще мозгов не хватает?
24 nicxxx
 
22.02.18
21:28
(8) "ч" и "Щ" пишем с буквой "У"
Основная теорема систематики: Новые системы плодят новые проблемы.