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

Автор Тема: Самописная, 1c8.2, Список значений  (Прочитано 6996 раз)

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

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
В список значений добавил время с восьмиУтра до восьмиВечера, тудаже впихнул занятое время из запроса к таблице.Теперь как бы из спискаЗначений удалить дубль вместе с дублем, по индексу только одно значение удаляет :(

СписокЗначений = Новый СписокЗначений;
Пока ВосемьУтра <= ВосемьВечера Цикл
       ВосемьУтра = ВосемьУтра + 1800;
      СписокЗначений.Добавить(ВосемьУтра - 1800);
       
КонецЦикла;
////////////////////////////
Для Каждого ТекущаяСтрокаТЗ Из ТЗ Цикл   
//Таблица1.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);      
СписокЗначений.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);
//Список.СортироватьПоЗначению();

КонецЦикла;



Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
В список значений добавил время с восьмиУтра до восьмиВечера, тудаже впихнул занятое время из запроса к таблице.Теперь как бы из спискаЗначений удалить дубль вместе с дублем, по индексу только одно значение удаляет :(

СписокЗначений = Новый СписокЗначений;
Пока ВосемьУтра <= ВосемьВечера Цикл
       ВосемьУтра = ВосемьУтра + 1800;
      СписокЗначений.Добавить(ВосемьУтра - 1800);
       
КонецЦикла;
////////////////////////////
Для Каждого ТекущаяСтрокаТЗ Из ТЗ Цикл   
//Таблица1.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);      
СписокЗначений.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);
//Список.СортироватьПоЗначению();

КонецЦикла;


например: время - 9:30 повторяется два раза их оба и нужно удалить

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
В список значений добавил время с восьмиУтра до восьмиВечера, тудаже впихнул занятое время из запроса к таблице.Теперь как бы из спискаЗначений удалить дубль вместе с дублем, по индексу только одно значение удаляет :(

СписокЗначений = Новый СписокЗначений;
Пока ВосемьУтра <= ВосемьВечера Цикл
       ВосемьУтра = ВосемьУтра + 1800;
      СписокЗначений.Добавить(ВосемьУтра - 1800);
       
КонецЦикла;
////////////////////////////
Для Каждого ТекущаяСтрокаТЗ Из ТЗ Цикл   
//Таблица1.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);      
СписокЗначений.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);
//Список.СортироватьПоЗначению();

КонецЦикла;


например: время - 9:30 повторяется два раза их оба и нужно удалить
  СписокЗначений = Новый СписокЗначений;
 
  ВремТЗ = Новый ТаблицаЗначений;
 Список = Новый Массив;
 ////////////////////////////////////*****
Пока ВосемьУтра <= ВосемьВечера Цикл
       ВосемьУтра = ВосемьУтра + 1800;
      СписокЗначений.Добавить(ВосемьУтра - 1800);
         
КонецЦикла;

////////////////////////////
Для Каждого ТекущаяСтрокаТЗ Из ТЗ Цикл   
//Таблица1.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);      
СписокЗначений.Добавить(ТекущаяСтрокаТЗ.ВремяНачала);

ЗначениеТЗ = ТекущаяСтрокаТЗ.ВремяНачала;

КонецЦикла;

Структура = Новый Структура ();

Для Каждого ТекущаяСтрока Из СписокЗначений Цикл

ЗначениеСпискаЗначений = ТекущаяСтрока.Значение
КонецЦикла;

 Найденное = СписокЗначений.НайтиПоЗначению(ЗначениеСпискаЗначений);
 
 стрОтбор = Новый Структура("ВремяНачала",ЗначениеСпискаЗначений);
 
МассивСтрок = ТЗ.НайтиСтроки(стрОтбор);
 
ВремТЗ = ТЗ.Скопировать(МассивСтрок);
 
ТЗ.Очистить();
 
ТЗ = ВремТЗ.Скопировать();

Так не хочет :(

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Стоп-стоп, а зачем удалять из списка значений?
И зачем занятое время туда добавлять из запроса? Опишите задачу поподробнее, сдается мне, можно все сделать намного проще.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
Стоп-стоп, а зачем удалять из списка значений?
И зачем занятое время туда добавлять из запроса? Опишите задачу поподробнее, сдается мне, можно все сделать намного проще.
Есть Интервал времени, например, с восьми утра до восьми вечера
СписокЗначений = Новый СписокЗначений;
Пока ВосемьУтра <= ВосемьВечера Цикл
       ВосемьУтра = ВосемьУтра + 1800;
      СписокЗначений.Добавить(ВосемьУтра - 1800);
КонецЦикла;
Из некоего списка запросом получили людей у которых время приёма начинается со стольки то - ВремяНачала. Задача: где нибуть с боку в отдельной колонке, например, исключить из интервала ВосемьУтра по ВосемьВечера ВремяНачала.

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Это можно сделать в Вашем же запросе, и ничего потом не перебирать построчно
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
Это можно сделать в Вашем же запросе, и ничего потом не перебирать построчно
интересно... не подумал... маленький намёк можно :)?..

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Если запрос нужен только для получения дат, которые нужно вычеркнуть, то можно сделать наоборот - отправить в запрос список значений, и чтобы он вернул их уже с вычетом вычеркнутых. В принципе, можно и еще один запрос написать, которому скормить два списка (исходный список и список, который надо вычеркнуть), и опять же вернуть нужное соединение...
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
Если запрос нужен только для получения дат, которые нужно вычеркнуть, то можно сделать наоборот - отправить в запрос список значений, и чтобы он вернул их уже с вычетом вычеркнутых. В принципе, можно и еще один запрос написать, которому скормить два списка (исходный список и список, который надо вычеркнуть), и опять же вернуть нужное соединение...
ОгромноеСпасибо

Оффлайн asdfr1

  • **
  • Сообщений: 93
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-28
  • Сайт: 
Усё,  тему можно закрыть  :xfbnsdfb: закончик задачу перебором


Теги:
 

"Таблица значений" в результате запроса - 1С

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

Ответов: 8
Просмотров: 726
Последний ответ 15 Июн 2017, 07:53
от mvk843
Ошибка - Обнаружено дублирование ключевых значений в колонке "Ссылка". Отображение данных в списке не возможно.

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

Ответов: 6
Просмотров: 4651
Последний ответ 24 Ноя 2015, 15:38
от welldone
"Проверка мутабельных значений на заполненность не поддерживается"

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

Ответов: 5
Просмотров: 20691
Последний ответ 13 Фев 2011, 17:36
от proofet
1C ЗУП 2.5 Помогите с отчетом "Списки сотрудников организации" Объединение значений ячеек

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

Ответов: 2
Просмотров: 1043
Последний ответ 10 Фев 2017, 10:49
от ksander-fars
Обход дерева значений на клиенте / развернуть многоуровневое дерево на клиенте

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

Ответов: 2
Просмотров: 5150
Последний ответ 01 Ноя 2015, 10:07
от Азиман

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
168 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
42 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 874
  • Точка Скрытых: 0
  • Точка Пользователей: 13
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal