|
Загрузка из запроса в ТЗ | ☑ | ||
---|---|---|---|---|
0
Singenor
15.11.12
✎
11:30
|
Имею ТП, в нем 4 колонки, в первые 2 загружаются данные из дбф файла, во вторые 2 колонки должны загружаться данные из запроса, но возникает трудность, чтобы они писались в одну строку, а не в несколько, т.е.
Данные дбф ДанныеЗапроса 1 2 1 2 а нужно в одну строку, как? |
|||
1
Singenor
15.11.12
✎
11:31
|
Файл = Новый Xbase;
Файл.Кодировка=КодировкаXBase.OEM; Файл.ОткрытьФайл(ПутьКФайлу); Если НЕ ЗначениеЗаполнено(ПутьКФайлу) Тогда Сообщить("Не указан DBF файл, для загрузки"); Возврат; КонецЕсли; ПараметрыПоиска = Новый Структура; ПараметрыПоиска.Вставить("Артикул", Файл.Art); ПараметрыПоиска.Вставить("Наименование", Файл.IKT); ТаблицаЗагрузки = Новый ТаблицаЗначений; ТаблицаЗагрузки.Колонки.Добавить("Пометка"); ТаблицаЗагрузки.Колонки.Добавить("АртикулФайл", , "Артикул из файла"); ТаблицаЗагрузки.Колонки.Добавить("НаименованиеФайл", ,"Наименование из файла"); ТаблицаЗагрузки.Колонки.Добавить("АртикулСправочник", ,"Артикул из справочника"); ТаблицаЗагрузки.Колонки.Добавить("НаименованиеСправочник", , "Наименование из справочника"); Если Файл.Открыта() тогда Файл.Первая(); НомерСтр = 1; КонецЕсли; Пока не Файл.ВКонце() Цикл Если ТаблицаЗагрузки.Найти(ПараметрыПоиска)=Неопределено Тогда НоваяСтрока = ТаблицаЗагрузки.Добавить(); НоваяСтрока.АртикулФайл = СокрЛП(Файл.Art); Новаястрока.НаименованиеФайл = СокрЛП(Файл.IKT); КонецЕсли; Файл.Следующая(); КонецЦикла; Файл.ЗакрытьФайл(); ОбработатьВходящиеДаныне(ТаблицаЗагрузки); ЭлементыФормы.ТабличноеПоле1.Значение = ТаблицаЗагрузки; ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки(); это на дбф |
|||
2
Singenor
15.11.12
✎
11:31
|
Процедура ОбработатьВходящиеДаныне (ТаблицаЗагрузки)
ЗапросПоНоменклатуре = Новый Запрос; ЗапросПоНоменклатуре.Текст = "ВЫБРАТЬ | Номенклатура.Артикул КАК АртикулФайл, | Номенклатура.Наименование КАК НаименованиеФайл |ПОМЕСТИТЬ втТЗ |ИЗ | Справочник.Номенклатура КАК Номенклатура |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВтТЗ1.Наименование, | ВтТЗ1.Артикул |ИЗ | &ВтТЗ КАК ВтТЗ1"; ЗапросПоНоменклатуре.УстановитьПараметр("ВтТз1", ТаблицаЗагрузки); Результат = ЗапросПоНоменклатуре.Выполнить().Выгрузить(); КонецПроцедуры это на ТЗ |
|||
3
Goggy
15.11.12
✎
11:32
|
(2) Например соединение с ТЗшкой
|
|||
4
Singenor
15.11.12
✎
11:33
|
так я ведь соединяю в (2)
|
|||
5
Goggy
15.11.12
✎
11:34
|
(4) где именно?
|
|||
6
Singenor
15.11.12
✎
11:34
|
ЗапросПоНоменклатуре.УстановитьПараметр("ВтТз1", ТаблицаЗагрузки);
не? |
|||
7
Singenor
15.11.12
✎
11:34
|
ТаблицаЗагрузки и есть Тзшка ведь
|
|||
8
Aprobator
15.11.12
✎
11:35
|
Свернуть и не етите мозг, товарищи.
|
|||
9
Aprobator
15.11.12
✎
11:35
|
а млин - там разные колонки.
|
|||
10
FIXXXL
15.11.12
✎
11:36
|
(7) поле связи какое у этих двух наборов данных?
|
|||
11
Singenor
15.11.12
✎
11:38
|
справочник номенклатура
|
|||
12
Aprobator
15.11.12
✎
11:38
|
лол.
|
|||
13
Goggy
15.11.12
✎
11:39
|
(6) неа
|
|||
14
FIXXXL
15.11.12
✎
11:41
|
(11) что справочник?
|
|||
15
Singenor
15.11.12
✎
11:42
|
(14) я не понимаю, какое поле связи, нужно чтобы из 2х наборов данные заносились в одно табличное поле
|
|||
16
Singenor
15.11.12
✎
11:43
|
они не связаны точнее, так что у них нет поля связи
|
|||
17
Reset
15.11.12
✎
11:44
|
(15) У тебя два набора строк. Нужно получить один набор. Т.е каждой строке из одного сопоставить строку другого и объединить их. Каким образом нужно определять какая строка какой соответсвует?
|
|||
18
Aprobator
15.11.12
✎
11:45
|
вопрос - нужно ли ему сопоставление вообще. Тут вообще непонятно какая задача решается. Хотя, заполнить колонки без сопоставления вообще не вопрос.
|
|||
19
Singenor
15.11.12
✎
11:45
|
(17) по артикулу
|
|||
20
Reset
15.11.12
✎
11:45
|
По твоему примеру "1,2" нельзя об этом догадаться, поэтому об этом спрашивают тебя
|
|||
21
Aprobator
15.11.12
✎
11:46
|
зачем тогда артикул 2 раза выводить в результирующую ТЗ?
|
|||
22
Singenor
15.11.12
✎
11:46
|
(21) один артикул выводится из дбф файла, второй артикул выводится из справочника
|
|||
23
Reset
15.11.12
✎
11:47
|
Тогда (3) с соединением по артикулу или тупо циклом с поиском
|
|||
24
Aprobator
15.11.12
✎
11:48
|
(22) если по ним связь есть, то нафига? Не проще сделать тупо 2 колонки и туда собрать данные из всех источников и потом свернуть чтобы дублей не было?
|
|||
25
SeregaMW
15.11.12
✎
11:48
|
А так вам не кошерно?
Для каждого строка из ТаблицаЗагрузки Цикл строка.Артикул = Спавочники.Номенклатура.НайтиПоРеквизиту("Артикул",Строка.АртикулФайл").Артикул; |
|||
26
Aprobator
15.11.12
✎
11:49
|
имхается мне, что требуется выполнить создание элементов справочника, если элементов с таким артикулом нет в нем.
|
|||
27
Reset
15.11.12
✎
11:49
|
Замечательно (25)
|
|||
28
Singenor
15.11.12
✎
11:51
|
(26) да, я делал на 2 табличных поля, ив се работало, а вот когда все нужно в 1 объеденить не получается
|
|||
29
Reset
15.11.12
✎
11:51
|
(26) Или возможно сравнение справочника и неких данных в дбф
|
|||
30
Aprobator
15.11.12
✎
11:51
|
прелестно просто.
|
|||
31
Singenor
15.11.12
✎
12:18
|
и еще такой вопрос, как сделать переключатели на выделение всех элементов в моей табличном поле, и соответственно на снятие всех элементов в моем табличном поле? Для этого есть колонка пометка, и тамдолжны так же ставиться галочки для одного элемента к примеру
|
|||
32
Singenor
15.11.12
✎
12:19
|
пометка
- - - - кнопка пометить все, нажимаем, и все - становятся + кнопка снять все, нажимаем, и все + становятся - |
|||
33
Aprobator
15.11.12
✎
12:20
|
как кнопку нарисовать и исполняемый код к ней присобачить???
|
|||
34
Aprobator
15.11.12
✎
12:20
|
на командной панели таблицы.
|
|||
35
Aprobator
15.11.12
✎
12:20
|
я медленно офигеваю нынче
|
|||
36
Singenor
15.11.12
✎
12:22
|
в ТП, я создал колонку для пометки для удаления, ей получается присваиваем тип число
|
|||
37
Singenor
15.11.12
✎
12:22
|
ой, то есть булево
|
|||
38
Aprobator
15.11.12
✎
12:24
|
продолжай, не томи народ то.
|
|||
39
Singenor
15.11.12
✎
12:25
|
ща, 5 сек, походу понял, не получится продожу)
|
|||
40
Singenor
15.11.12
✎
12:34
|
сделал для всех элементов, но только не флажок, а просто пишется значение Да или Нет, можно ли сделать флажок для выбора в Тп? я такого не видел вроде еще)
|
|||
41
Singenor
15.11.12
✎
12:35
|
Процедура ОтметитьНажатие(Элемент)
Для каждого строка из ТабличноеПоле1 Цикл строка.Пометка = Истина; КонецЦикла; КонецПроцедуры такое вот для всех элементов |
|||
42
Reset
15.11.12
✎
12:37
|
Так короче
ТабличноеПоле1.ЗаполнитьЗначения(Истина,"Пометка") |
|||
43
Reset
15.11.12
✎
12:37
|
(40) можно, правильно сделав (36)
|
|||
44
Reset
15.11.12
✎
12:38
|
Правльно выбрав элемент управления и указав данные для него в нужном поле
|
|||
45
Singenor
15.11.12
✎
12:38
|
(43) тип булев в моей колонке стоит куда выводиться Да или Нет, точнее куда должен флажок выводиться)
|
|||
46
Шапокляк
15.11.12
✎
12:38
|
(40) Значение в ТП какого типа? Таблица значений? Если да, добавь колонку с типом флажок и в поле свойств Данные флажка впиши наименование колонки.
Может, тебе стоит поиском научиться пользоваться? |
|||
47
Singenor
15.11.12
✎
12:40
|
блин, не то открывал, точно, нашел тип флажок) мерси)
|
|||
48
Singenor
15.11.12
✎
12:40
|
и последний вопрос, как тогда сделать чтобы галочки ставились, а не да или нет писалось в флажок?)
|
|||
49
Noroving
15.11.12
✎
12:43
|
Зачем циклы? в запросе соедини таблицу из справочника с таблицой из дбф по артикулу и все
|
|||
50
Шапокляк
15.11.12
✎
12:45
|
(47) Поле "Данные ФЛАЖКА" заполни, а поле "ДАННЫЕ" оставь пустым.
|
|||
51
Singenor
15.11.12
✎
12:46
|
(5) так и стоит, щас покажу
|
|||
52
Singenor
15.11.12
✎
12:47
|
||||
53
Шапокляк
15.11.12
✎
12:51
|
А свойства табличного поля покажи
|
|||
54
Aprobator
15.11.12
✎
12:52
|
пометка создана в поле, но ее нет в ТЗ связанной с ним. И к гадалке не ходи.
|
|||
55
Singenor
15.11.12
✎
12:52
|
||||
56
Aprobator
15.11.12
✎
12:53
|
а млин - все сделано
|
|||
57
Aprobator
15.11.12
✎
12:53
|
отображение н не то
|
|||
58
Aprobator
15.11.12
✎
12:55
|
было там типа отображать картинку.
(52) не люблю такой вывод свойств. ИМХО, закладками удобнее. |
|||
59
Singenor
15.11.12
✎
12:57
|
(58) мне кажется про катинку не подойдет
|
|||
60
Шапокляк
15.11.12
✎
13:00
|
Я пас. У меня в 8.1. такая штука работает
|
|||
61
Reset
15.11.12
✎
13:03
|
(52) Как-то ты очень хитро добавил колонку. Там должно быть св-во ЭлементУправления, у тебя нет его почему то.
|
|||
62
Reset
15.11.12
✎
13:06
|
Правый клик на Табличном поле - добавить колонку -> указать элемент управления Флажок --> очистить поле Данные --> заполнить поле данные флажка
|
|||
63
Шапокляк
15.11.12
✎
13:06
|
(62) У меня такое же при добавлении флажка. На начальном этапе это поле в свойствах есть, а при повторном открытии нету.
|
|||
64
Reset
15.11.12
✎
13:08
|
(63) Точно!
Но если стереть данные флажка и заполнить "данные", снова появляется |
|||
65
narayanan
15.11.12
✎
13:13
|
у меня в свойствах табличного поля ТипЗначения указано ВнешняяОбработка.ТабличнаяЧасть.Обработка.ТЧПередачаМатВЭкс.Товары НЕ ТаблицаЗначений
|
|||
66
Reset
15.11.12
✎
13:17
|
(65) А у нас сегодня кошка родила вчера котят
|
|||
67
narayanan
15.11.12
✎
13:20
|
(66) Предложение синтаксически не согласовано, садись два
|
|||
68
Reset
15.11.12
✎
13:23
|
(67) Это к Михалкову
|
|||
69
Singenor
15.11.12
✎
17:04
|
Теперь такой вопрос, есть процедура:
Процедура ДанныеНаименованиеСправочникПриИзменении(Элемент) Для каждого Строка из Данные Цикл Строка.АртикулСправочник = Строка.Номенклатура.Артикул; КонецЦикла; КонецПроцедуры В ней происходит следующее: при выборе номенклатуры, в поле Номенклатура, в поле Артикул прописывается артикул выбранной номенклатуры, все работает и все прекрасно, только как сделать, чтобы артикул, который прописывается в АртикулСправочник потом сохранялась? |
|||
70
Singenor
15.11.12
✎
17:05
|
(69) а не, не надо
|
|||
71
Singenor
15.11.12
✎
17:36
|
как сделать запрет на редактирование определенных колонок в ТЧ?
|
|||
72
Шапокляк
15.11.12
✎
17:42
|
А в колонках Доступность убрать не вариант?
|
|||
73
Singenor
15.11.12
✎
17:53
|
можно)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |