|   |   | 
| 
 | Загрузка из запроса в ТЗ | ☑ | ||
|---|---|---|---|---|
| 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 | 
        можно)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |