Перейти к содержимому


Услуги программиста 1С
Профессиональные программисты 1С.
Весь комплекс услуг сопровождения 1С.

Курсы 1С
Бухгалтерам, менеджерам
и программистам.
Бесплатно!
Живое индивидуальное обучение по 1С.

- - - - -

Подчиненный документ


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1   IRON_PRIEST

IRON_PRIEST

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 38
    • Регистрация: 16-February 10
    • Откуда:Днепропетровск , Днепропетровская Область , Украина

Отправлено 13 January 2011 - 14:11

Добрый день. есть выгрузка
Code
Процедура Сформировать()
  ТАБ=СоздатьОбъект("Таблица");
  ТАБ.ВывестиСекцию("Шапка");
  ДОК=Создатьобъект("Документ.Калькуляция");
  ДОК1=Создатьобъект("Документ");
  ДОК.Выбратьдокументы(НачДата,КонДата);
  Пока ДОК.Получитьдокумент()=1 Цикл;
   Если Док.Проведен()=1 Тогда
       Док1.ВыбратьПодчиненныеДокументы(,,Док.ТекущийДокумент());
    Пока Док1.ПолучитьДокумент() = 1 Цикл
     ДОК1.ВыбратьСтроки();
     Пока ДОК1.ПолучитьСтроку()=1 Цикл;
      ДатДок=Док.ДатаДок;
      ТекДок=Док.ТекущийДокумент();
      Номер=Док.НомерДок;
      Вид=Док.ВидКалькуляции;
      Складмат=Док.МестоХранения;
      Продукция=Док.Продукция;
      СкладПродукции=Док.МестоХраненияПродукции;
      КолПродукциия=Док.КвоПродукции;
      Заказ=Док.ЗаказНаш;
      подч=Док1.НомерДок;
      вид1=Док1.ВидКалькуляции;
      КолПродукциия1=Док1.КвоПродукции;
      Затрата1=Док1.Затрата;
      Партия1=Док1.Партия;
            Кол1=Док1.Кво;
      СуммаПред1=Док1.СуммаНач;
      СуммаОкон1=Док1.СуммаКон;
      ТАБ.ВывестиСекцию("Секция_1");                  
     КонецЦикла;
    КонецЦикла;
   КонецЕсли;
  КонецЦикла;
  Таб.Опции(0,,1,,);
//    ТАБ.ТолькоПросмотр(1);
  ТАБ.Показать();
КонецПроцедуры

теперь вот ерунда такого плана. вроде бы выгружает как нада, только есть повторы, но не совсем повторы, а я даже не могу объяснить это. в картинке цветом выделено то что правильно. остального быть не должно

http://s53.radikal.r...ce116280e8c.jpg
продолжение
http://i074.radikal....1fcc174b486.jpg

что неправильно сделано?

  • 0

#2   vik

vik

      Полковник

    • Пользователи
    • PipPipPipPipPipPip
    • Сообщений: 241
    • Регистрация: 08-April 09
    • Откуда:Белогородка , Киевская Область , Украина

Отправлено 13 January 2011 - 14:20

IRON_PRIEST,
// смотри коментарий
ДОК1.ВыбратьСтроки();
Пока ДОК1.ПолучитьСтроку()=1 Цикл;
// делаешь выборку из табличной части документа, а то, что ниже не относится к табличной части
ДатДок=Док.ДатаДок;
ТекДок=Док.ТекущийДокумент();
Номер=Док.НомерДок;
Вид=Док.ВидКалькуляции; ...
  • 0
Одна из самых чудесных наград этой жизни - искренне помогая другому, непременно помогаешь и себе

#3   IRON_PRIEST

IRON_PRIEST

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 38
    • Регистрация: 16-February 10
    • Откуда:Днепропетровск , Днепропетровская Область , Украина

Отправлено 13 January 2011 - 14:59

т.е. ДатДок=Док.ДатаДок;
ТекДок=Док.ТекущийДокумент();
Номер=Док.НомерДок;
Вид=Док.ВидКалькуляции; ...

ставить перед ДОК1.ВыбратьСтроки();?

  • 0

#4   vik

vik

      Полковник

    • Пользователи
    • PipPipPipPipPipPip
    • Сообщений: 241
    • Регистрация: 08-April 09
    • Откуда:Белогородка , Киевская Область , Украина

Отправлено 13 January 2011 - 15:06

IRON_PRIEST, примерно так
  • 0
Одна из самых чудесных наград этой жизни - искренне помогая другому, непременно помогаешь и себе

#5   IRON_PRIEST

IRON_PRIEST

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 38
    • Регистрация: 16-February 10
    • Откуда:Днепропетровск , Днепропетровская Область , Украина

Отправлено 13 January 2011 - 15:10

не помогает

то выгружает не все документы, то выгружает по старой

  • 0

#6   vik

vik

      Полковник

    • Пользователи
    • PipPipPipPipPipPip
    • Сообщений: 241
    • Регистрация: 08-April 09
    • Откуда:Белогородка , Киевская Область , Украина

Отправлено 13 January 2011 - 15:16

попробуй так

Процедура Сформировать()
ТАБ=СоздатьОбъект("Таблица");
ТАБ.ВывестиСекцию("Шапка");
ДОК=Создатьобъект("Документ.Калькуляция");
ДОК1=Создатьобъект("Документ");
ДОК.Выбратьдокументы(НачДата,КонДата);
Пока ДОК.Получитьдокумент()=1 Цикл;
Если Док.Проведен()=1 Тогда
Док1.ВыбратьПодчиненныеДокументы(,,Док.ТекущийДокумент());
Пока Док1.ПолучитьДокумент() = 1 Цикл
ДатДок=Док.ДатаДок;
ТекДок=Док.ТекущийДокумент();
Номер=Док.НомерДок;
Вид=Док.ВидКалькуляции;
Складмат=Док.МестоХранения;
Продукция=Док.Продукция;
СкладПродукции=Док.МестоХраненияПродукции;
КолПродукциия=Док.КвоПродукции;
Заказ=Док.ЗаказНаш;
подч=Док1.НомерДок;
вид1=Док1.ВидКалькуляции;
КолПродукциия1=Док1.КвоПродукции;
ДОК1.ВыбратьСтроки();
Пока ДОК1.ПолучитьСтроку()=1 Цикл;
Затрата1=Док1.Затрата;
Партия1=Док1.Партия;
Кол1=Док1.Кво;
СуммаПред1=Док1.СуммаНач;
СуммаОкон1=Док1.СуммаКон;
ТАБ.ВывестиСекцию("Секция_1");
КонецЦикла;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Таб.Опции(0,,1,,);
// ТАБ.ТолькоПросмотр(1);
ТАБ.Показать();
КонецПроцедуры

  • 0
Одна из самых чудесных наград этой жизни - искренне помогая другому, непременно помогаешь и себе

#7   IRON_PRIEST

IRON_PRIEST

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 38
    • Регистрация: 16-February 10
    • Откуда:Днепропетровск , Днепропетровская Область , Украина

Отправлено 13 January 2011 - 15:21

результат тотже =(
  • 0

#8   Max_Nj

Max_Nj

      Ищу работу!!!

    • Пользователи
    • PipPipPipPipPipPipPipPip
    • Сообщений: 506
    • Регистрация: 07-August 08
    • Откуда:Мелитополь

Отправлено 13 January 2011 - 16:19

А если вставить:
Если Док1.Проведен()=0 Тогда
Продолжить;
КонецЕсли;

после строки: "Пока Док1.ПолучитьДокумент() = 1 Цикл"

  • 0

#9   IRON_PRIEST

IRON_PRIEST

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 38
    • Регистрация: 16-February 10
    • Откуда:Днепропетровск , Днепропетровская Область , Украина

Отправлено 13 January 2011 - 19:06

если честно мне эта мысль пришла в голову когда уже из того кода вытащил информацию и обработал дальше все вручную biggrin

СПАСИБО!!!

  • 0




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных