Имя: Пароль:
1C
1С v8
Сравнение 2 ТЗ
0 Xving
 
06.10.14
19:04
Добрый день!

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

Сейчас выглядит как-то так
Запрос = Новый Запрос;
    Сообщить("Заполнение Города за период: НачДата = " + НачалоДня(НачДата) + "; КонДата = " + КонецДня(КонДата) );
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗаказКлиента.Ссылка КАК Заказ,
    |    ЗаказКлиента.АдресДоставки КАК Адрес
    |ИЗ
    |    Документ.ЗаказКлиента КАК ЗаказКлиента
    |ГДЕ
    |    ЗаказКлиента.Дата МЕЖДУ &НачДата И &КонДата
    |    И ЗаказКлиента.Доставка = ИСТИНА";
    
    //|    И (ЗаказКлиента.АдресДоставки ПОДОБНО ""%г.%""
    //|ИЛИ ЗаказКлиента.АдресДоставки ПОДОБНО ""%гор%"")";
    
    
    Запрос.УстановитьПараметр("НачДата",НачалоДня(НачДата));
    Запрос.УстановитьПараметр("КонДата",КонецДня(КонДата));
    
    //МассивП = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Адрес");
    ТЗАдр = Запрос.Выполнить().Выгрузить();//.ВыгрузитьКолонку("Заказ");
    
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    АдресныйКлассификатор.Наименование КАК ГородКладр,
    |    АдресныйКлассификатор.Сокращение КАК ТИП
    |ИЗ
    |    РегистрСведений.АдресныйКлассификатор КАК АдресныйКлассификатор
    |ГДЕ
    |    АдресныйКлассификатор.Сокращение = ""г""";
    
    ТЗКладр = Запрос.Выполнить().Выгрузить();
    //ГорКладр = Кладр.ВыгрузитьКолонку("городКладр");
    
    Для Каждого Строка ИЗ ТЗАдр Цикл
        СтрАдрес = Строка.Адрес;
        Для Каждого Строка из ТЗКладр Цикл

        /////////////////////////////////////
Вот тут нужно что-то типа
Если Строка.ТЗАдр содержит Строка.ТЗКладр
1 КонецЦикла
 
06.10.14
19:08
не очень понятно сформулировано...
смотри функции работы со строками - можно найти вхождение
если понятнее сформулировать, то можно все и в запросе сделать
2 Xving
 
06.10.14
19:10
Попробую уточнить)
Необходимо из адреса заказа вытащить город, который вытаскивается в таблицу из второго запроса-там просто список городов КЛАДра получается.
Так же в самом документе новое поле с городом.
Т.е. если в адресе у нас например г. Москва ул.Ленинская, то в новое поле после сравнения с кладром надо вытащить чисто город без префиксов "Москва"
3 Ненавижу 1С
 
гуру
06.10.14
19:20
Хреновая идея, мы в УТ 10.3 переделали Адрес доставки в Заказе на справочник
4 Xving
 
06.10.14
19:21
Согласен, мы в итоге так и собираемся сделать, проблема в том, что нужно разобрать уже имеющиеся заказы
5 France
 
06.10.14
22:02
(3) а нормально использовать типовой функционал не пробовали??
6 Ненавижу 1С
 
гуру
06.10.14
22:48
(5) расскажи мне как отобрать заказы по секторам доставки (например север Московской области)
7 vde69
 
06.10.14
22:52