![]() |
![]() |
![]() |
|
Изменение строки в Таблице Значение | ☑ | ||
---|---|---|---|---|
0
Sofia
24.05.10
✎
12:09
|
У меня есть Таблица Значений - ТаблицаЗаписей.
Я пытаюсь отобрать в ней нужные строки и изменить их в таблице же. Как это лучше сделать? |
|||
1
Jstunner
24.05.10
✎
12:11
|
НайтиСтроки
|
|||
2
Voffka2008
24.05.10
✎
12:13
|
НайденнаяСтрока = ТаблицаЦен.Найти(ВыбТовар, "Товар");
Если НайденнаяСтрока = Неопределено Тогда Предупреждение("Товар не найден!"); Иначе НайденнаяСтрока.Цена = ТвояЦена; КонецЕсли; |
|||
3
Sofia
24.05.10
✎
12:13
|
Решила для поиска строки использовать Отбор:
Отбор = Новый Структура; Отбор.Вставить("ВидРасчета",ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуИндексируемые); Отбор.Вставить("БазовыйПериодНачало",НачалоМесяца(ВыборкаДоп.ПериодДействия)); Отбор.Вставить("БазовыйПериодКонец",КонецМесяца(ВыборкаДоп.ПериодДействия)); |
|||
4
Sofia
24.05.10
✎
12:14
|
ух..вы быстрее меня пишите)))Это то я поняла как сделать.
ну изменю я эти строки как мне нужно, а как мне потом в таблицу эти измененнные строки поместить..вот что я не поняла(( |
|||
5
Voffka2008
24.05.10
✎
12:15
|
если делать отбором, на выходе получаем массив строк таблицы. Перебираем строки и просто изменяем значение.
|
|||
6
Voffka2008
24.05.10
✎
12:15
|
НайтиСтроки (FindRows)
Синтаксис: НайтиСтроки(<Параметры отбора>) Параметры: <Параметры отбора> (обязательный) Тип: Структура. Задает условия поиска: ключ структуры определяет имя колонки, по которой будет осуществляться поиск, а значение структуры - искомое значение. Возвращаемое значение: Тип: Массив. Массив строк таблицы значений, соответствующих условиям поиска. Замечание! Массив хранит ссылки на строки таблицы значений, то есть при изменении строки в таблице, значение в массиве тоже будет измененным и соответственно наоборот |
|||
7
Sofia
24.05.10
✎
12:16
|
Получается изменяя значения в найденных строках они автоматом изменяются и в самой таблице?
|
|||
8
Voffka2008
24.05.10
✎
12:18
|
точно :)
|
|||
9
Sofia
24.05.10
✎
12:23
|
Спасибо Вам огромное)))
|
|||
10
Sofia
24.05.10
✎
12:45
|
Немножечко еще не допоняла((
Отбор = Новый Структура; Отбор.Вставить("ВидРасчета",ПланыВидовРасчета.СреднийЗаработок.ПоЗаработкуИндексируемые); Отбор.Вставить("БазовыйПериодНачало",НачалоМесяца(ВыборкаДоп.ПериодДействия)); Отбор.Вставить("БазовыйПериодКонец",КонецМесяца(ВыборкаДоп.ПериодДействия)); НайденнаяСтрока = ТаблицаЗаписей.НайтиСтроки(Отбор)[0].Результат - СуммаРК - СуммаСН; |
|||
11
Sofia
24.05.10
✎
12:46
|
Проведя такие махинации с "НайденнаяСтрока" ТаблицаЗаписей от этого не изменится.
А мне надо изменить в нет "Результат" |
|||
12
DrWatson
24.05.10
✎
12:49
|
НайденныеСтроки = ТаблицаЗаписей.НайтиСтроки(Отбор);
Для каждого ТекСтрока ИЗ НайденныеСтроки Цикл ТекСтрока.Результат = "нет";//ну или что-то там ещё КонецЦикла; |
|||
13
Sofia
24.05.10
✎
12:49
|
ок, щас попробую))
|
|||
14
Sofia
24.05.10
✎
12:51
|
А если я точно знаю что найденная строка 1.Зачем я в цикл ее загонять буду?
|
|||
15
DrWatson
24.05.10
✎
12:55
|
(14) ну если точно, тогда цикл не нужен.
На самом деле бывает редко когда это известно точно, строк может не быть или их будет несколько, в результате заложенной методики или ошибок. В таком случае ещё сделайте проверку на количество строк, чтобы во время узнать, что возникла ситуация, которую Вы не ожидали. |
|||
16
Sofia
24.05.10
✎
12:56
|
на возможное отсутствие я проверила, а то что точно 1 строка это ТОЧНО))
|
|||
17
DrWatson
24.05.10
✎
13:01
|
(16) Ладно-ладно, кричать-то зачем.
|
|||
18
Sofia
24.05.10
✎
13:05
|
я не кричу))А вот сейчас кричу - СРАБОТАЛО))))
|
|||
19
DrWatson
24.05.10
✎
13:05
|
:)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |