Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 02:46
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Как передать номер строки в табличной части документа  (Прочитано 3964 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Namik

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-09
  • Сайт: 
  • Профессия: Бухгалтер
Добрый день

Есть некий код, который сохраняет историю изменения документа.

//проверка таб частей
      Для Каждого ТЧ Из Мета.ТабличныеЧасти Цикл
         ИмяТЧ=ТЧ.Имя;
         Если Ссылка[ИмяТЧ].Количество()<>ЭтотОбъект[ИмяТЧ].Количество() Тогда
            НовСтр=тПроверка.Добавить();
            НовСтр.Автор=Строка(ИмяЮзверя);
            НовСтр.Реквизит="ТЧ.Строка №"+НомСтр;
            НовСтр.СтароеЗначение="--->";
            НовСтр.НовоеЗначение="Удалено строка №"+НомСтр;
            НовСтр.Время=Строка(ТекущаяДата());
            ЕстьИзменения=Истина;
            //Продолжить;    //если количество строк не совпадает уже наш клиент
         КонецЕсли;   
         КолСтр=Ссылка[ИмяТЧ].Количество();
         ЕстьИзм=Ложь;
         Для НомСтр=0  По КолСтр-1  Цикл
            ДЛя Каждого РекТЧ Из Мета.ТабличныеЧасти[ИмяТЧ].Реквизиты Цикл
               ИмяРек=РекТЧ.Имя;
               
               Если Ссылка[ИмяТЧ][НомСтр][ИмяРек]<>ЭтотОбъект[ИмяТЧ][НомСтр][ИмяРек] Тогда
                  НовСтр=тПроверка.Добавить();
                  НовСтр.Автор=Строка(ИмяЮзверя);
                  НовСтр.Реквизит="ТЧ.Строка №"+(НомСтр+1) +"."+ ИмяРек;
                  НовСтр.СтароеЗначение=Ссылка[ИмяТЧ][НомСтр][ИмяРек];
                  НовСтр.НовоеЗначение=ЭтотОбъект[ИмяТЧ][НомСтр][ИмяРек];
                  НовСтр.Время=Строка(ТекущаяДата());
                  ЕстьИзм=Истина;
                  ЕстьИзменения=Истина;
                  //Прервать;//все изменения таб частей детално отслеживать не будем.Просто фиксируем факт
               КонецЕсли;   
            КонецЦикла;

Как передать (вывести) номер строки табличной части документа в строки?

НовСтр.Реквизит="ТЧ.Строка №"+НомСтр (????);
НовСтр.НовоеЗначение="Удалено строка №"+НомСтр (???);

Указанный НомСтр выдает ошибку: не обнаружено поле.


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Какая-такая строка? на этом этапе ее уже нет, строка удалена и номера у нее нет.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
если у вас вот такой цикл
Для НомСтр=0  По КолСтр-1  Цикл

то номер строки логично равен (НомСтр+1)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Namik

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-09
  • Сайт: 
  • Профессия: Бухгалтер
до удаления строки у нее же был номер. вот этот номер нужно вывести в макет в виде типа удалена такая-та строка номер такой то. как это осуществить?

варианты НомСтр = ЭтотОбъект.ТЧ.Колонки.НомерСтроки в разныъ вариациях (элементы, формы, формадокумента) не подходит.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
варианты НомСтр = ЭтотОбъект.ТЧ.Колонки.НомерСтроки в разныъ вариациях (элементы, формы, формадокумента) не подходит.

...ибо глупость.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Namik

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-09
  • Сайт: 
  • Профессия: Бухгалтер
подскажите, пожалуйста, как правильно и не глу

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
у вас просто в ЭТОМ месте
"
....
ИмяТЧ=ТЧ.Имя;
         Если Ссылка[ИмяТЧ].Количество()<>ЭтотОбъект[ИмяТЧ].Количество() Тогда
            НовСтр=тПроверка.Добавить();
            НовСтр.Автор=Строка(ИмяЮзверя);
            НовСтр.Реквизит="ТЧ.Строка №"+НомСтр;
            НовСтр.СтароеЗначение="--->";
            НовСтр.НовоеЗначение="Удалено строка №"+НомСтр;
            НовСтр.Время=Строка(ТекущаяДата());
            ЕстьИзменения=Истина;
            //Продолжить;    //если количество строк не совпадает уже наш клиент
         КонецЕсли;
.....
"

не построчно же сравнивается, а просто сравнивается количество строк и если не совпадает, то записывается в проверку что удалены строки, поэтому так как сейчас номер удаленной строки не получить, надо переделывать.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Namik

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-09
  • Сайт: 
  • Профессия: Бухгалтер
Намекните, пожалуйста, как  переделать. немного подсказки

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
обходите одну ТЧ и по индексу первой строки находите строку во второй ТЧ.
ТЕОРИЯ! с помощью ЗначениеВСтрокуВнутр() получаете внутренние представления обоих строк и сравниваете.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Namik

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-09
  • Сайт: 
  • Профессия: Бухгалтер
знание по 1с как у первоклашки. усложнили еще. теперь читать и практиковаться.


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4478
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7749
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984
"Не совпадают сумма документа и общая сумма по платежным ведомостям"

Автор yunovoРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 4786
Последний ответ 11 Янв 2015, 02:55
от MuI_I_Ika
Фамилия руководителя в печатных формах документа "Акт сверки", "Акт об оказании"

Автор MKozzlikРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 7344
Последний ответ 03 Фев 2012, 17:27
от Dinah
Не заполняется поле "Цена" при формировании документа "Пересчет товаров"

Автор InnakechaРаздел Пользователям "1С - Предприятие 8"

Ответов: 4
Просмотров: 1084
Последний ответ 29 Дек 2016, 09:54
от Innakecha

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
46 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
BuhRust
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 142
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal