Имя: Пароль:
1C
1С v8
Внешнее событие.Проведение документа
0 Nenaviwu1c20
 
05.11.13
14:23
Народ как провести документ через ком соединение?
1 shuhard
 
05.11.13
14:24
(0) по любому не через внешнее событие
2 vicof
 
05.11.13
14:24
а что, собственно, не получается?
3 Nenaviwu1c20
 
05.11.13
14:25
Вопрос снят .Решение нашел.СторонняяБаза.режимзаписидокумента.UndoPosting
4 fisher
 
05.11.13
14:26
UndoPosting - это отмена проведения :)
5 Wobland
 
05.11.13
14:26
навеяло..

ххх: хелп! ктонить! каг по инглишу буит волонтерство? я тут резюме заполняю, хочю похвастаца!:)
ууу: free blowjob
ххх: пасибки!
6 fisher
 
05.11.13
14:28
(5) Возможно, помогли устроиться на крутую работу :)
7 H A D G E H O G s
 
05.11.13
14:30
(3) Прям так и тянет закосить под программирование на сурьезных ЯП? Чтобы по английски, как в (прости, Гейтс), б-г мерзких C++ ?
8 Nenaviwu1c20
 
05.11.13
14:31
Я отменить проведение хотел.Просто устал как собака вот и написал проведение))
9 H A D G E H O G s
 
05.11.13
14:31
Забавно наблюдать товарищей, пишущих кот на латинице. Комплексы?
10 Nenaviwu1c20
 
05.11.13
14:34
(9) Predstavit' ne mowesh kakie.Nikak ne priviknu k kirilice
11 fisher
 
05.11.13
14:35
(7) Тогда было бы 1C.DocumentWriteMode.UndoPosting
Я иногда переходил на такой стиль в функциях с плотной работой с внешними COM-объектами. И прикольно и разношерстность кода глаз не режет :)
(10) Зато какая прелесть давать длинные мнемонические :) Код читается как русская проза :)
12 fisher
 
05.11.13
14:37
(10) Все англоговорящие пишут на родном языке и не парятся по этому поводу :)
13 fisher
 
05.11.13
14:41
(9) В данном случае это, наверное, вынужденное. Из внешних сред бывают проблемы с кириллическими названиями свойств и методов в 1С.
14 Nenaviwu1c20
 
05.11.13
14:44
(13) Благодарю за понимание
15 Nenaviwu1c20
 
05.11.13
15:45
Продолжу тему
16 Nenaviwu1c20
 
05.11.13
15:46
как поместить ТаблицуЗнвчений ы запрос КОМ соединения,если учесть,что в таблице типы колонок соответствуют типам в КОМ базе.
17 Nenaviwu1c20
 
05.11.13
15:46
Реализации_Com = Новый ТаблицаЗначений;
    Реализации_Com.Колонки.Добавить("Реализация");
    Реализации_Com.Колонки.Добавить("Склад");
    Для каждого стр из Реализации цикл
        Если ЗначениеЗаполнено(стр.РеализацияНомер) Тогда
            Новст = Реализации_Com.Добавить();
            Новст.Реализация = СторонняяБаза.Документы.РеализацияТоваровУслуг.FindByNumber(стр.РеализацияНомер,ДатаОбработки) ;
            Новст.Склад = СторонняяБаза.Справочники.Склады.НайтиПоКоду(стр.Склад.Код)  ;
        КонецЕсли;
    КонецЦикла;
     Запрос = СторонняяБаза.NewObject("Query");
    
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ВЫРАЗИТЬ(Реализации.Склад КАК Справочник.Склады) КАК Склад,
    |    ВЫРАЗИТЬ(Реализации.Реализация КАК Документ.РеализацияТоваровУслуг) КАК Реализация
    |ПОМЕСТИТЬ ТабРеализации
    |ИЗ
    |    &Реализации КАК Реализации
    |ГДЕ
    |    Реализации.Реализация <> ЗНАЧЕНИЕ(Документ.РеализацияТоваровУслуг.ПустаяСсылка)
    |    И ВЫРАЗИТЬ(Реализации.Склад КАК Справочник.Склады) В (&ВключенныеСклады)
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    |    Таб.Склад КАК Склад,
    |    Таб.Номенклатура,
    |    ВЫБОР
    |        КОГДА Таб.Количество - ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) > 0
    |            ТОГДА Таб.Количество - ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
    |        ИНАЧЕ 0
    |    КОНЕЦ КАК КоличСГлавногоСклада,
    |    Таб.ЕдиницаИзмерения,
    |    Таб.ХарактеристикаНоменклатуры,
    |    Таб.Цена КАК Цена,
    |    Таб.РеализацияДата КАК РеализацияДата,
    |    Таб.Подразделение КАК Подразделение,
    |    ЕдиницыИзмерения.Ссылка КАК ЕдИзКоробка,
    |    ЕдиницыИзмерения.Коэффициент КАК КоэфКоробок,
    |    ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток
    |ИЗ
    |    (ВЫБРАТЬ
    |        ТабРеализации.Склад КАК Склад,
    |        РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
    |        СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество,
    |        РеализацияТоваровУслугТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    |        РеализацияТоваровУслугТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |        МИНИМУМ(РеализацияТоваровУслугТовары.Цена) КАК Цена,
    |        МИНИМУМ(ТабРеализации.Реализация.Дата) КАК РеализацияДата,
    |        МИНИМУМ(ТабРеализации.Реализация.Подразделение) КАК Подразделение
    |    ИЗ
    |        ТабРеализации КАК ТабРеализации
    |            ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
    |            ПО ТабРеализации.Реализация = РеализацияТоваровУслугТовары.Ссылка
    |    ГДЕ
    |        РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация
    |    
    |    СГРУППИРОВАТЬ ПО
    |        РеализацияТоваровУслугТовары.Номенклатура,
    |        РеализацияТоваровУслугТовары.ЕдиницаИзмерения,
    |        ТабРеализации.Склад,
    |        РеализацияТоваровУслугТовары.ХарактеристикаНоменклатуры) КАК Таб
    |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
    |        ПО Таб.Номенклатура = ЕдиницыИзмерения.Владелец
    |            И (ЕдиницыИзмерения.ЕдиницаПоКлассификатору = &Коробка)
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки
    |        ПО Таб.Склад = ТоварыНаСкладахОстатки.Склад
    |            И Таб.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура
    |ГДЕ
    |    Таб.Количество - ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) > 0
    |ИТОГИ
    |    МИНИМУМ(РеализацияДата),
    |    МИНИМУМ(Подразделение)
    |ПО
    |    Склад";
    
    ЕдКоробки = СторонняяБаза.Справочники.КлассификаторЕдиницИзмерения.НайтиПоКоду("123");
    Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь, "ОсновнаяОрганизация");
    Запрос.УстановитьПараметр("Реализации", Реализации_Com);
    Запрос.УстановитьПараметр("ВключенныеСклады", ВключенныеСклады_COM);
    Запрос.УстановитьПараметр("Коробка",ЕдКоробки);
    Запрос.УстановитьПараметр("Организация",СторонняяБаза.Справочники.Организации.НайтиПоКоду(Организация.Код));
18 Nenaviwu1c20
 
05.11.13
15:47
Да я решил ориентироваться по коду,а не значение строки внутр и обратно,чтобы получить ссылочный тип
19 H A D G E H O G s
 
05.11.13
16:04
Жесть, жесть, жесть.
20 Nenaviwu1c20
 
05.11.13
16:06
(19) Ну почему так грубо?)
21 H A D G E H O G s
 
05.11.13
16:08
Реализации_Com = СторонняяБаза.NewObject("ТаблицаЗначений");
    Реализации_Com.Колонки.Добавить("Реализация", СторонняяБаза.NewObject("ОписаниеТипов","ДокументСсылка.РеализацияТоваровУслуг"));
    Реализации_Com.Колонки.Добавить("Склад",СторонняяБаза.NewObject("ОписаниеТипов","СправочникСсылка.Склады"));
22 Nenaviwu1c20
 
05.11.13
16:09
(21) Большое Спасибо.Просто проблема в том что я в первый раз с комом работаю.Еще раз спасибо
23 H A D G E H O G s
 
05.11.13
16:10
(20) Таблицу значений можно было бы построить Запросом, вместо цикла. Это в 100500 раз быстрее.
24 Nenaviwu1c20
 
05.11.13
16:12
(23) Согласен.Но спешить не куда