![]() |
![]() |
![]() |
|
Добавление столбца в таблицу | ☑ | ||
---|---|---|---|---|
0
Dexx
01.06.05
✎
14:37
|
Добрый день! В виду своей малой компетентности в програмировании на 1с прошу: помогите!
Существует следующая проблемма: при выдаче материалов со склада сотрудник пользуется документом "выдача материалов". После введения всех необходимых данных, он нажимает кнопку "подбор",и видит остатки материалов на складе.Дело в том, что в этой таблице не хватает важного стобца с номером данного материала. Очень нужно этот столбец сделать чтобы сотрудник набивал код и материал сразу оказывался у него перед глазами. Если все таки кто нибудь решиться мне помочь, то заранее просьба поподробнее. |
|||
1
Crew
01.06.05
✎
14:48
|
конфигурация какая?
|
|||
2
иносказатель
01.06.05
✎
15:35
|
Форма справочника "ДляПОдбора" - добавляй в список элементов реквизит "КОд"
(1) А какая разница? |
|||
3
Парижская фанера
01.06.05
✎
15:36
|
(2) Если ТиС то можно в сторону артикля рыть...
|
|||
4
Crew
01.06.05
✎
15:37
|
(2)
Большая. Уверен что там есть форма списка "ДляПОдбора"? А справочник как называется? |
|||
5
goodfella
01.06.05
✎
15:38
|
А где автор?
|
|||
6
иносказатель
01.06.05
✎
15:39
|
(4) А какая разница как называется форма используемая для подбора? Смысл главное.
Вот скажи, щас он тебе ответит "Учёт тараканов для Замбабве". Тебе легче станет? Конечно, проще всего открыть конфу и глянуть чего и как. А может лучше чтобы человек сам немного подумал - для профилактики |
|||
7
Беглый
01.06.05
✎
15:39
|
А справочник скорее всего называется "Номенклатура"..
|
|||
8
goodfella
01.06.05
✎
15:41
|
(7) А вдруг "Материалы"?
|
|||
9
иносказатель
01.06.05
✎
15:41
|
(+3) А раз речь идёт о "выдачи материалов" - то скорее всего конфигурация - производство. Или комплекс.....
|
|||
10
Беглый
01.06.05
✎
15:42
|
(8) А вдруг, Номенклатура
|
|||
11
Crew
01.06.05
✎
15:42
|
(6)
Да мне станет легче буду знать что отвечать. вообще универсальный ответ "Читай ЖКК" или РТФМ, и пусть думает.. |
|||
12
Беглый
01.06.05
✎
15:44
|
(8) Название идентификатора справочника, как бы он не назывался, можно получить из таблицы документа.. И если это окажеться Номенклатура, с тебя пиво
|
|||
13
иносказатель
01.06.05
✎
15:44
|
(11) Давай тебе так скажем?
Нужно подтолкнуть человека к решению проблемы а не кичиться крутизной, зная такие слова как "ЖКК" и "РТФМ". |
|||
14
Беглый
01.06.05
✎
15:47
|
Dexx, и в самом деле, почитай книжку,..
|
|||
15
goodfella
01.06.05
✎
15:49
|
(12) Ни фига, блин. :-)
|
|||
16
Crew
01.06.05
✎
15:49
|
(13)
Какой нервный однако. Вроде крутизной я не кичился, да и никогда себя к крутым одноэсникам не причислял. А вам уважаемый отдыхать чаще нужно сходите например на иглорефлексотерапию (я еще и не такие слова знаю ;) |
|||
17
Парижская фанера
01.06.05
✎
15:50
|
10 баксов на goodfella!!
|
|||
18
Crew
01.06.05
✎
15:51
|
(16)+
Да и вроде как (6) был не для (0), а персонально для Вас "иносказатель" |
|||
19
иносказатель
01.06.05
✎
15:52
|
(16) я не нервный, я разве тебя назвал "крутым"? Ты ошибаешься..... За совет по поводу отдыха - спасибо - непременно воспользуюсь, а вот на сеанс иглотерапии не пойду - уколов боюсь.....
|
|||
20
Crew
01.06.05
✎
15:52
|
(17)
там справочник неопределенного вида |
|||
21
Crew
01.06.05
✎
15:54
|
(19)
Теперь я понял смысл твоего ника ;) "кичиться крутизной" это не равнозначно назвать "крутым" |
|||
22
Беглый
01.06.05
✎
15:55
|
(20) хм..в этом я очень сомневаюсь..Да и вообще-то хозяин ветки, думаю, уже все и сам, без нашей помощи во всем разобрался.. Разве что кому-нить 10 баксов заработать
|
|||
23
goodfella
01.06.05
✎
15:56
|
Вот скоро автор соизволит вернуться, и скажет что-нибудь типа:
-Всем спасибо, разобрался сам, на форме подбора оказывается есть кнопка "Колонки", там достаточно включить видимость колонки "Код". Или что-нибудь вроде того. :-) |
|||
24
Беглый
01.06.05
✎
16:01
|
(23) ..и добавить, - "а справочник называется "Номенклатура"
|
|||
25
иносказатель
01.06.05
✎
16:02
|
(21) Неправильно. Говорить "я крутой" и быть им - разные вещи...
|
|||
26
Dexx
01.06.05
✎
16:44
|
Извиняюсь, дела одолели конфигурация называется 1с предприятие
|
|||
27
Dexx
01.06.05
✎
17:08
|
Справочник называется "материалы".Добавил реквизит "код".Потом нажал кнопку Формы списка там нашел "ДляПодбора" и увидел свою старую добрую таблицу, которую мне и надо модифицировать! не подскажите, что дальше?
|
|||
28
Crew
01.06.05
✎
17:11
|
(21)
Разговор слепого с глухим. (27) Блин тебе ведь иноговоритель все подсказал, осталось только подумать... |
|||
29
Crew
01.06.05
✎
17:14
|
(27)
Слушай а как ты смог реквизит код добавить? Расскажи... А вообще табличку увидел выбирай пункт меню вставить -> реквизиты диалога |
|||
30
Беглый
01.06.05
✎
17:18
|
Млин..остался я без пива
|
|||
31
Casatka
01.06.05
✎
17:18
|
Как точно называется документ? Он свой или типовой?
|
|||
32
Парижская фанера
01.06.05
✎
17:24
|
Консилиум телепатов
|
|||
33
Dexx
01.06.05
✎
17:29
|
Sorry, вру. при попытке назвать новый реквизит именем "код" он заругался. Назвал "номер"
|
|||
34
Dexx
01.06.05
✎
17:30
|
Документы=> складской учет=> отпуск материалов
|
|||
35
Dexx
01.06.05
✎
17:34
|
Короче говоря я открыл в конфигураторе справочник "материалы", там нажал формы списка и для подбора. Увидел родную таблицу. Нажал вставить\реквизиты там наконец то увидел что нет галочки напротив параметра "код". Поставил галку. сохранил, запустил 1с предприятие, включаю подбор - кода нет :(. Что еще попробывать?
|
|||
36
Беглый
01.06.05
✎
17:34
|
(33) Убей свой реквизит "Номер"..
Открываешь в конфигураторе эту форму подбора (справочник Материалы) Меню->Вставить->Реквизиты-> поставь галочку на против "Код"->Нажми кнопку вставить.. После мышкой перетащи вставленную колонку(по умолчанию она будет самой последней) туда, куда тебе удобно |
|||
37
Беглый
01.06.05
✎
17:36
|
(35) Она есть, просто скорее всего за пределами экрана..
|
|||
38
Dexx
01.06.05
✎
17:38
|
Это я уже сделал. Проблемма в том, что конфигуратор видит сделанные мной изменения. А запускаю 1с - все осталось по прежнему.
|
|||
39
Беглый
01.06.05
✎
17:42
|
Не должно быть..Мышкой подвигай..Передвинь Колонку "Код" в самое начало (возможно еще - свойства колонки-> сделать невидимым, хотя сомневаюсь, по умолчанию все должно быть видимо
|
|||
40
sserj
01.06.05
✎
17:44
|
(38) А после того как изменил форму, конфигурацию сохранил?
|
|||
41
Беглый
01.06.05
✎
17:46
|
Ну да..конфигурацию бы сохранить не плохо было бы..
|
|||
42
Dexx
02.06.05
✎
08:42
|
Доброе утро! Да конфигурацию я естественно сохранил, у меня возник вопрос. Может ли быть так, что этот столбец не отображается по причине его не связанности с чем то еще или может быть ему необходимо что то вроде ссылки на значения, чтобы их оттуда брать, хотя впринципе, если бы такое было он просто был пустым а не вообще не отображался?
|
|||
43
По идее так
02.06.05
✎
08:46
|
Смотри в справочнике : длина кода случаем не 0 ???
|
|||
44
Dexx
02.06.05
✎
08:48
|
Длина кода 10.
|
|||
45
По идее так
02.06.05
✎
08:49
|
(42) Так у тебя столбец не виден ? Посмотри в форме списка для подбора, ту колонку которую ты всавил : Не стоит ли там галка "Сделать невидимым"
|
|||
46
Dexx
02.06.05
✎
08:50
|
нет это я уже проверял. Галок типа сделать невидимым и запретить редактирование нету
|
|||
47
По идее так
02.06.05
✎
08:51
|
+(42) Ты конфу то со своими изменениями сохранил ??
PS: Должно быть типа .. анализ изменения конфы,...реорганизация завершена .. бла бла бла .... Было такое ?? |
|||
48
Dexx
02.06.05
✎
08:52
|
Меня что смущает у него значение строка и его никак не изменишь. Должно быть так?
|
|||
49
Dexx
02.06.05
✎
08:53
|
Да да такое было
|
|||
50
По идее так
02.06.05
✎
08:54
|
(47) И на последок ... А ты уверен, что открываешь (в самой 1с-ке) форму списка для подбора ??? ( А не просто форму списка).....
Если нет , проделай всё тоже самое только с формой списка справочника (т.е добавь реквизит код ...) |
|||
51
Dexx
02.06.05
✎
08:55
|
Ок щас попробую
|
|||
52
По идее так
02.06.05
✎
08:56
|
(48) Тип значения кода тут не имеет значения
|
|||
53
Dexx
02.06.05
✎
11:03
|
С ужастным чувством стыда сообщаю, что путем изучения кнопки "подбор" в диалоге документа "выдача материалов"я понял, что данная кнопка открывает совсем не справочник "материалы" а обработку "остатки материалов", именно в которую (оказывается!) и нужно внести изменения! Передо мной теперь встала следующая проблемма. Путем некоторой некомпетентной модификации я изменил модуль и программа стала очень ругаться на некорректное поведение некоторых строк. При открытии диалога там столбцов никаких нет, так что, как я понял редактировать надо непосредственно в модуле. Не подкинете идею?
Перем ТаблицаВыбора; //-------------------------------------------------------------- Процедура ПриОткрытии() Перем Запрос, ТекстЗапроса; Если ТипЗначения(Форма.Параметр)<>0 Тогда ДатаДок=Форма.Параметр.Получить("ДатаДок"); Док=Форма.Параметр.Получить("ТекущДок"); ТекущФирма=Форма.Параметр.Получить("Фирма"); МестоХранения=Форма.Параметр.Получить("МестоХранения"); //ВидДок=Док.Вид(); //Если (ВидДок="Выдача") ИЛИ (ВидДок="СписаниеСоСклада") Тогда ВыбРег="Склад"; //ИначеЕсли (ВидДок="ВозвратОтМол") ИЛИ (ВидДок="СписаниеСМОЛ") Тогда // ВыбРег="МатОтвЛица"; //КонецЕсли; КонецЕсли; Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ДатаДок по ДатаДок; |Фирма = Регистр.Склад.Фирма;"; Если ВыбРег="МатОтвЛица" Тогда ТекстЗапроса=ТекстЗапроса+" |МестоХр = Регистр.МатОтвЛица.Ответственный;"; ИначеЕсли ВыбРег="Склад" Тогда ТекстЗапроса=ТекстЗапроса+" |МестоХр = Регистр.Склад.Склад;"; КонецЕсли; ТекстЗапроса=ТекстЗапроса+" //(Моё)|Код = Регистр."+ВыбРег+".Материал.Код |Материал = Регистр."+ВыбРег+".Материал; |Единица = Регистр."+ВыбРег+".Материал.Единица; |Колво = Регистр."+ВыбРег+".Колво; |Сумма = Регистр."+ВыбРег+".Сумма; |Условие(Фирма=ТекущФирма); |Условие(МестоХр=МестоХранения); |Группировка Материал без групп; |Группировка МестоХр без групп; |Функция КолвоКонОст = КонОст(Колво); |Функция СуммаКонОст = КонОст(Сумма); |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; Запрос.Выгрузить(Остатки,1,0); Остатки.УстановитьПараметрыКолонки("КолвоКонОст",,,,"Остаток",8,,); Остатки.УстановитьПараметрыКолонки("Единица",,,,"Ед.изм",6,,2); //(Моё)Остатки.УстановитьПараметрыКолонки("Код",,,,"Код",6,,2); Остатки.ВидимостьКолонки("Материал,Единица,КолвоКонОст,Код",1); Остатки.ВидимостьКолонки("МестоХр,Колво,Сумма,СуммаКонОст,Фирма",0); Форма.ИнфСтр.Заголовок("Остатки по объекту хранения "+МестоХранения); ////// Цвет Если Запрос.КолвоКонОст<0 Тогда Запрос.КолвоКонОст.Цвет(255,1,1); КонецЕсли; ////// КонецПроцедуры //-------------------------------------------------------------- Процедура ПриВыбореСтр() КолвоОст = Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"КолвоКонОст"); СуммаОст = Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"СуммаКонОст"); Если КолвоОст>0 Тогда Цена=СуммаОст/КолвоОст; Кол=0; Если ВвестиЧисло(Кол,"Введите количество",10,3)=1 Тогда Если Кол<=0 Тогда Предупреждение("Введите положительное число."); СтатусВозврата(0); Возврат; КонецЕсли; Если Кол>КолвоОст Тогда Если Вопрос("В наличии "+КолвоОст+" единиц этого материала. Выбрать весь остаток?",4)=6 Тогда Колво=КолвоОст; Иначе Возврат; КонецЕсли; Иначе Колво=Кол; КонецЕсли; Иначе Колво=0; Возврат; КонецЕсли; Сумма=Цена*Колво; //(Моё)ВыбКод=Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"Код"); ВыбМатериал=Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"Материал"); ВыбЕдиница=Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"Единица"); ВыбСумма=Остатки.ПолучитьЗначение(Остатки.ТекущаяСтрока(),"Сумма"); Остатки.Выгрузить(ТаблицаВыбора,,1,); ТаблицаВыбора.УдалитьСтроки(); ТаблицаВыбора.НоваяСтрока(); //(Моё)ТаблицаВыбора.УстановитьЗначение(1,"Код",ВыбКод); ТаблицаВыбора.УстановитьЗначение(1,"Материал",ВыбМатериал); ТаблицаВыбора.УстановитьЗначение(1,"Единица",ВыбЕдиница); ТаблицаВыбора.УстановитьЗначение(1,"Колво",Колво); ТаблицаВыбора.УстановитьЗначение(1,"Сумма",Сумма); Форма.ВыполнитьВыбор(ТаблицаВыбора); Иначе Предупреждение("На складе нет этого материала"); КонецЕсли; КонецПроцедуры //-------------------------------------------------------------- ТаблицаВыбора=СоздатьОбъект("ТаблицаЗначений"); (комментированые строки, начинающиеся со слова (моё)-моя попытка редактирования. |
|||
54
Ёпрст
гуру
02.06.05
✎
11:14
|
>>"программа стала очень ругаться на некорректное поведение некоторых строк"
Что конкретно Вы изменили ?, и на что ругается ? |
|||
55
Dexx
02.06.05
✎
11:26
|
Изменил строки, которые комментированныеи начинаются со слова (моё)
Ошибки: Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Обработка.ОстаткиМатериалов.Форма.Модуль(45)}: <<?>> Материал = Регистр.Склад.Материал; Запрос[6] : Ожидается ';' перед 'Материал' Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Обработка.ОстаткиМатериалов.Форма.Модуль(45)}: Условие(Фирма=ТекущФирма <<?>> ); Запрос[10] : Ошибка в условии Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Обработка.ОстаткиМатериалов.Форма.Модуль(45)}: Условие(МестоХр=МестоХранения <<?>> ); Запрос[11] : Ошибка в условии Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Обработка.ОстаткиМатериалов.Форма.Модуль(45)}: Группировка Материал <<?>> без групп; Запрос[12] : Переменная 'Материал' не опеределена |
|||
56
Ёпрст
гуру
02.06.05
✎
11:35
|
1.|Код = Регистр."+ВыбРег+".Материал.Код - забыл поставить ";"
остальные ошибки следуют из 1. |
|||
57
Dexx
02.06.05
✎
11:42
|
Действительно, супер, сколько я мучался! Только вот еще один вопро как сделать так, чтобы материал можно было выбрать из всей кучи с помощью поиска по коду. т.е. чтобы она набивала код в строке поиска под общим списком и оставалось только нажать энтер.И еще. насколько я понял порядок столбцов определяется их последовательностью в модуле,так? А чем определяется ширина столбца?
|
|||
58
Ёпрст
гуру
02.06.05
✎
11:47
|
1.В твоем случае порядок столбцов определяется в Запросе,из которого ты грузишь в ТЗ.
2.Ширина колонки в методе УстановитьПараметрыКолонки() УстановитьПараметрыКолонки(<?>,,,,,,,); Синтаксис: УстановитьПараметрыКолонки(<Колонка>,<Тип>,<Длина>,<Точность>,<Заголовок>,<Ширина>,<Формат>,<Положение>) Назначение: Устанавливает новые значения параметров колонки (только те, которые указаны). Если какой либо параметр при вызове метода не задан, то данный параметр колонки не изменяется. Параметры: <Колонка> - номер или код колонки, для которой будут установлены новые параметры. <Тип> - необязательный параметр. Строка или вид субконто, задающий тип колонки. Если не указан, то можно хранить любой тип. <Длина> - необязательный параметр. Длина для числовой или строковой колонки. <Точность> - необязательный параметр. Точность (длина дробной части) для числовой колонки. <Заголовок> - необязательный параметр. Строковое выражение, содержащее заголовок колонки в элементе диалога типа ''ТаблицаЗначений''. <Ширина> - необязательный параметр. Числовое выражение, содержащее ширину колонки (в символах) для представления колонки в элементе диалога типа ''ТаблицаЗначений''. <Формат> - необязательный параметр. Строковое выражение, содержащее форматную строку, которая будет использована при визуальном отображении значений данной колонки. <Положение> - необязательный параметр. Определяет вариант выравнивания при визуальном отображении значений данной колонки. Число: 1 - слева; 2 - справа. |
|||
59
Dexx
02.06.05
✎
12:07
|
Да понял. А насчет вот этого поиска? Смысл в том, чтоб кладощик нажимал мышкой на стобец "код", набивал нужный номер,и строка перемещалась на нужный материал, ему только бы оставалось нажать "энтер"
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |