|
v7: Таблица значений в форме | ☑ | ||
|---|---|---|---|---|
|
0
Мируня
20.06.12
✎
20:45
|
Люди добрые, помогите!!! С 7-кой не работала лет сто, все забыла...
Проблема: в обработке в форму добавила таблицу значений, а вот колонки для этой ТЗ могу добавить только программно... Вроде же можно "увидеть" эти колонки в конфе? И как настроить эту ТЗ, чтоб ее редактировать можно было в пользовательском режиме? |
|||
|
1
zak555
20.06.12
✎
20:47
|
> 7-кой не работала лет сто
сколько же тебе лет ? |
|||
|
2
Мируня
20.06.12
✎
20:54
|
)))) по крайней мере, последние года три писать на ней ничего не приходилось...
|
|||
|
3
GreyK
20.06.12
✎
20:55
|
(0) Позови старца-спеца от 1С, не мучай свой восьмерошный интелект, да и заплати ему как следует.
|
|||
|
4
NS
20.06.12
✎
20:55
|
А до этого "настраивать ТЗ" приходилось?
|
|||
|
5
Мируня
20.06.12
✎
20:58
|
(4) да конечно, 10 лет одинэсного стажа... да вот память поводить стала(((
|
|||
|
6
GreyK
20.06.12
✎
21:00
|
(5) Видимо СП у тебя спёрли :)
НоваяКолонка(<?>,,,,,,,); Синтаксис: НоваяКолонка(<Идентификатор>,<Тип>,<Длина>,<Точность>,<Заголовок>,<Ширина>,<Формат>,<Положение>) Назначение: Добавить в конец таблицы значений новую колонку. Возвращает номер новой колонки. Параметры: <Идентификатор> - необязательный параметр. Идентификатор колонки. Если не указан, то обращение к колонке возможно только по номеру. <Тип> - необязательный параметр. Строка или вид субконто, задающий тип колонки. Если не указан, то можно хранить любой тип. <Длина> - необязательный параметр. Длина для числовой или строковой колонки. <Точность> - необязательный параметр. Точность (длина дробной части) для числовой колонки. <Заголовок> - необязательный параметр. Строковое выражение, содержащее заголовок колонки в элементе диалога типа ''ТаблицаЗначений''. <Ширина> - необязательный параметр. Числовое выражение, содержащее ширину колонки (в символах) для представления колонки в элементе диалога типа ''ТаблицаЗначений''. <Формат> - необязательный параметр. Строковое выражение, содержащее форматную строку, которая будет использована при визуальном отображении значений данной колонки. <Положение> - необязательный параметр. Определяет вариант выравнивания при визуальном отображении значений данной колонки. УстановитьПараметрыКолонки(<?>,,,,,,,); Синтаксис: УстановитьПараметрыКолонки(<Колонка>,<Тип>,<Длина>,<Точность>,<Заголовок>,<Ширина>,<Формат>,<Положение>) Назначение: Устанавливает новые значения параметров колонки (только те, которые указаны). Если какой либо параметр при вызове метода не задан, то данный параметр колонки не изменяется. Параметры: <Колонка> - номер или код колонки, для которой будут установлены новые параметры. <Тип> - необязательный параметр. Строка или вид субконто, задающий тип колонки. Если не указан, то можно хранить любой тип. <Длина> - необязательный параметр. Длина для числовой или строковой колонки. <Точность> - необязательный параметр. Точность (длина дробной части) для числовой колонки. <Заголовок> - необязательный параметр. Строковое выражение, содержащее заголовок колонки в элементе диалога типа ''ТаблицаЗначений''. <Ширина> - необязательный параметр. Числовое выражение, содержащее ширину колонки (в символах) для представления колонки в элементе диалога типа ''ТаблицаЗначений''. <Формат> - необязательный параметр. Строковое выражение, содержащее форматную строку, которая будет использована при визуальном отображении значений данной колонки. <Положение> - необязательный параметр. Определяет вариант выравнивания при визуальном отображении значений данной колонки. |
|||
|
7
NS
20.06.12
✎
21:05
|
(5) в 1С 7.7 визуальной настройки колонок в тз на форме нет!
И увидеть эти колонки в конфе ты тоже не сможешь. |
|||
|
8
Мируня
20.06.12
✎
21:05
|
(6) это-то уже есть... говорю же, колонки хоть программно, но добавила... Сейчас надо чтоб пользователь мог редактировать эту ТЗ. Пример: две колонки, одна заполняется автоматически, в другую юзер подставляет свои значения (причем типы выбираемых значений могут быть разные). И далее база обрабатывается согласно этим соответствиям.
|
|||
|
9
NS
20.06.12
✎
21:07
|
(8) Повесь процедуру на ТЗ,
В ней определи текущую строку, и проставляй. |
|||
|
10
GreyK
20.06.12
✎
21:08
|
(7) Зависит от разработчика, никто не мешает сделать настройки.
|
|||
|
11
GreyK
20.06.12
✎
21:11
|
(9) Не "текущую строку", а "текущую колонку", а в зависимости от колонки делаешь нужные движухи в ТЗ.
|
|||
|
12
NS
20.06.12
✎
21:12
|
(11) Текущую строчку.
Цитирую: "Пример: две колонки, одна заполняется автоматически, в другую юзер подставляет свои значения (причем типы выбираемых значений могут быть разные)." |
|||
|
13
2S
20.06.12
✎
21:15
|
фото!
кнопки вешай на добавить, удалить редактирование вешай на саму тз |
|||
|
14
2S
20.06.12
✎
21:17
|
хорошим тоном считаю внешнюю обработку для добавления/редактирования строки тз. Одна обработка с разными режимами
|
|||
|
15
Мируня
20.06.12
✎
21:19
|
Процедура ПриНачалеВыбораЗначения(ЭлементДиалога,Флаг)
Если ЭлементДиалога = "Поле2" Тогда Данные = ТабДанных.ТекущаяСтрока(); ИмяСпр = СоздатьОбъект(Справочник."+Данные.Поле1); ..... ОткрытьФорму("Справочник."+ИмяСпр); КонецЕсли; КонецПроцедуры Примерно что-то такое, но вот справочник для выбора не открывается... |
|||
|
16
NS
20.06.12
✎
21:21
|
(15) При чем тут Приначалевыборазначения()?
Ты должна прописать свою, а не предопределенную процедуру. |
|||
|
17
Мируня
20.06.12
✎
21:21
|
(13) добавлять/удалять строки как раз не надо...
|
|||
|
18
Конфигуратор1с
20.06.12
✎
21:21
|
Всех кто помогает без фотки забанить
|
|||
|
19
NS
20.06.12
✎
21:22
|
ОткрытьФорму() - не вернет тебе значение.
|
|||
|
20
GreyK
20.06.12
✎
21:22
|
(12) Нет
Процедура ОбработкаТыкаТЗ() Если ТЗ.ТекущаяКолонка()="ИмяКолонки" Тогда А здесь пишется код. КонецЕсли; КонецПроцедуры //ОбрТабл() |
|||
|
21
NS
20.06.12
✎
21:23
|
(20) И что изменится, если ты уберешь проверку на имя колонки?
|
|||
|
22
Мируня
20.06.12
✎
21:23
|
(16), (20) счас попробую...
|
|||
|
23
GreyK
20.06.12
✎
21:24
|
(15) На форму ТЗ вешаешь процедурку ОбработкаТыкаТЗ()
Вешаешь фотку... и дальше |
|||
|
24
2S
20.06.12
✎
21:26
|
комрады, ждем фото!
тссс |
|||
|
25
NS
20.06.12
✎
21:26
|
Процедура ОбработкаТыкаТЗ()
стр=ТЗ.Текущаястрока(); Если (стр>0)и(стр<=ТЗ.Количествострок()) тогда спр=создатьобъект("Справочник."+имя); Если спр.выбрать(...)>0 тогда ТЗ.получитьстрокупономеру(стр); ТЗ.ДанныеПользователя=спр.Текущийэлемент(); КонецЕсли; КонецЕсли; |
|||
|
26
2S
20.06.12
✎
21:27
|
это зачем
стр<=ТЗ.Количествострок()? |
|||
|
27
GreyK
20.06.12
✎
21:28
|
(23) За такое на костЁр!
|
|||
|
28
NS
20.06.12
✎
21:28
|
(26) На всякий случай.
|
|||
|
29
GreyK
20.06.12
✎
21:28
|
(27) > (25)
|
|||
|
30
NS
20.06.12
✎
21:29
|
(29) Это тебя на костер, за проверку имени колонки в ТЗ, в которой только одна редактируемая колонка.
|
|||
|
31
2S
20.06.12
✎
21:29
|
Если (стр>0)и(стр<=ТЗ.Количествострок())и неконецсвет тогда
не? |
|||
|
32
NS
20.06.12
✎
21:31
|
(31) У меня 1С под рукой
|
|||
|
33
NS
20.06.12
✎
21:31
|
нет, но что выдаст Текущаястрока() после позиционировании на последней строке, и удалении после этого строки?
|
|||
|
34
2S
20.06.12
✎
21:32
|
(32) без шуток, никогда не использовал проверку на второе условие
Опиши исключительную причину |
|||
|
35
2S
20.06.12
✎
21:33
|
хм..
|
|||
|
36
GreyK
20.06.12
✎
21:33
|
(30) Колонок у ТЗ может быть много, а вот ТекущаяСтрока одна!
Если одна редактируемая колонка на ТЗ, то урод в квадрате. Для этого есть СЗ. |
|||
|
37
2S
20.06.12
✎
21:34
|
интересно, сейчас смоделирую
|
|||
|
38
NS
20.06.12
✎
21:35
|
(34) Неа, смещает текущую строку, так что вторая проверка не нужна...
Хотя нужно еще проверить обрезку ТЗ методом количествострок() |
|||
|
39
NS
20.06.12
✎
21:36
|
Блин, и после обрезки через количествострок() смещает текущую строку.
Может в одном из ранних релизов был глюк на эту тему, и поэтому привык писать проверку. |
|||
|
40
NS
20.06.12
✎
21:37
|
(36) В условии написано что изменяемая колонка одна.
|
|||
|
41
2S
20.06.12
✎
21:37
|
(38) во-во, никогда с описанным тобой глюком не сталкивался. Неважно, какую строку удаляли.
в тесте все нормально прошло |
|||
|
42
NS
20.06.12
✎
21:38
|
(36) В ТЗ может быть десять колонок, но при этом одна редактируемая.
И с помощью СЗ ты её не смоделируешь. про ТЗ у неё тоже в условии. |
|||
|
43
2S
20.06.12
✎
21:38
|
(42) чел не в теме
|
|||
|
44
2S
20.06.12
✎
21:39
|
(36) по какому условию ты будешь для разных типов колонок использовать ввестичисло(), ввестидату() и т.д.?
|
|||
|
45
GreyK
20.06.12
✎
21:40
|
+(43) Да.
|
|||
|
46
2S
20.06.12
✎
21:40
|
о тебе я
|
|||
|
47
NS
20.06.12
✎
21:42
|
(44) Прочитай ветку - у неё одна редактируемая колонка. Какие разные типы колонок? Ты о чем?
|
|||
|
48
Мируня
20.06.12
✎
21:43
|
Оставь вас здесь на минутку... прочитать не успеваю...
В общем, вроде сработало вот это: ТекКол = ТабДанных.ТекущаяКолонка(); ТекСтр = ТабДанных.ТекущаяСтрока(); ВыбЗначение = ""; Если ТекКол = "Филиал" Тогда Если ВвестиЗначение(ВыбЗначение,"Выберите филиал","Справочник.УпрАналитика")=1 Тогда ТабДанных.УстановитьЗначение(ТекСтр,ТекКол,ВыбЗначение); КонецЕсли; КонецЕсли; |
|||
|
49
2S
20.06.12
✎
21:43
|
да блин, NS, я для (36) уже говорю, не по сабжу )
|
|||
|
50
2S
20.06.12
✎
21:44
|
(48) молодец, а фото?
|
|||
|
51
Мируня
20.06.12
✎
21:45
|
всем спасибо, на самом деле колонок было несколько, просто если разобраться с одной колонкой - с несколькоими тоже можно разобраться. а вводимые данные только ссылочного типа, так что тут проще)))
|
|||
|
52
NS
20.06.12
✎
21:46
|
(48) Еще круче ВыбЗначение=ТЗ.Получитьзначение(текстр,теккол);
Перед ввестиЗначение() |
|||
|
53
NS
20.06.12
✎
21:46
|
Текстр на ноль всё-таки лучше проверить.
|
|||
|
54
Мируня
20.06.12
✎
21:46
|
кстати, я тут чел новый, а что значит фото?
|
|||
|
55
NS
20.06.12
✎
21:47
|
(54) В личных данных. Топлесс.
|
|||
|
56
2S
20.06.12
✎
21:47
|
(54) вооооооооот. проваливайся в себя, редактируй фото
|
|||
|
57
Мируня
20.06.12
✎
21:48
|
(52) - да, тоже вариант, кстати)) пока делала - много чего вспомнилось...)))
|
|||
|
58
GreyK
20.06.12
✎
21:49
|
(54) Молодые одинэсниги ищут жён, вот и просят фото.
|
|||
|
59
GreyK
20.06.12
✎
21:50
|
+(58) В личке.
|
|||
|
60
Мируня
20.06.12
✎
21:53
|
ну... как-то вот так...))) любуйтеся)))
|
|||
|
61
Мируня
20.06.12
✎
21:54
|
а молодым одинесникам не повезло... рядом старый неодинесовец против...)))
|
|||
|
62
GreyK
20.06.12
✎
21:59
|
(60) Ну а ранец то зачем на рисунке!?
|
|||
|
63
NS
20.06.12
✎
22:00
|
Вроде это спинка стула.
|
|||
|
64
GreyK
20.06.12
✎
22:01
|
+(62) Хотя это наверно спика стула :)
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |