|
Как узнать имя ЗНАЧЕНИЯ перечисления через Запрос | ☑ | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0
Alexey_Morov
18.05.11
✎
20:34
|
У меня есть запрос вида
SELECT ВыдачаДенежныхДокументов.ВидОперации FROM Документ.ВыдачаДенежныхДокументов AS ВыдачаДенежныхДокументов поле ВидОперации - ссылка на перечисление ВидыОперацийВыдачаДенежныхДокументов. Мне нужно используя объект Запрос вытащить у ЗНАЧЕНИЯ перечисления: имя синоним комментарий порядок Работаю через COM-соединение. Как же так??? Таким образом вопрос - можно ли вытащить через Запрос эти данные? |
|||||||||||||
1
Живой Ископаемый
18.05.11
✎
21:16
|
нет
|
|||||||||||||
2
Fragster
гуру
18.05.11
✎
21:19
|
нафига?
|
|||||||||||||
3
Immortal
18.05.11
✎
21:20
|
ВЫБОР КОГДА блаБла = ЗНАЧЕНИЕ() ТОГДА
КОГДА блаБла = ЗНАЧЕНИЕ() ТОГДА |
|||||||||||||
4
Immortal
18.05.11
✎
21:21
|
с порядком надо подумать, да
|
|||||||||||||
5
Живой Ископаемый
18.05.11
✎
21:21
|
ну да, то есть чтобы через запрос узнать указанные совйства значения перечисления нужно их знать наперед еще до выполнения запроса. :)
|
|||||||||||||
6
Immortal
18.05.11
✎
21:29
|
посмотрел, порядок и так запросом можно вытащить
синоним - представление |
|||||||||||||
7
Immortal
18.05.11
✎
21:30
|
перечисление - такая же таблица - обратился и вытащил все значения
|
|||||||||||||
8
Alexey_Morov
19.05.11
✎
10:55
|
Immortal, нужно вытащить именно в запросе и обязательно поля "имя", "синоним", "комментарий". Ссылку и порядок можно вытащить. Я уже посмотрел.
Как быть? |
|||||||||||||
9
Живой Ископаемый
19.05.11
✎
10:58
|
если ты в запрос передаешь ЗНАЧЕНИЕ() и внутри значение перечисления - то ты либо формируешь запрос динамически либо передаешь туда парметр - то есть так или иначение значение уже знаешь, снаружи запроса.. а раз так, то ты знаешь и все остальное.. и все это остальное можешь таким же манером передать в запрос
|
|||||||||||||
10
asady
19.05.11
✎
11:02
|
||||||||||||||
11
Alexey_Morov
19.05.11
✎
11:09
|
(10)
А можно ли как-нибудь так? Запрос=новый запрос; запрос.Текст="ВЫБРАТЬ | ВидыОС.Ссылка, | ВидыОС.Порядок КАК Индекс, | ВидыОС.Имя, | ВидыОС.Комментарий |ИЗ | Перечисление.ВидыОС КАК ВидыОС"; Выборка=Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() цикл Сообщить(""+Выборка.ссылка+" : "+Выборка.индекс); конецЦикла; Как же вытащить Имя и комментарий через запрос? До запроса я не знаю ничего про перечисление. |
|||||||||||||
12
Живой Ископаемый
19.05.11
✎
11:12
|
нет
|
|||||||||||||
13
guitar_player
19.05.11
✎
11:30
|
(0) Сделай до запроса ВТ со всеми свойствами, передай в запрос. либо после запроса сделай все что тебе надо...
|
|||||||||||||
14
Alexey_Morov
19.05.11
✎
11:33
|
(13)
Остаётся только так. Последую Вашему совету. |
|||||||||||||
15
Alexey_Morov
19.05.11
✎
14:44
|
Господа, а ещё такой вопрос.
Как в запросе преобразовать ссылку в строку? То есть вот так: ВЫРАЗИТЬ ВЫРАЗИТЬ(ВидОперации.Ссылка КАК СТРОКА) КАК ВидОп ИЗ Документ.ВыдачаДенежныхДокументов КАК ВыдачаДенежныхДокументов поле ВидОперации - ссылка на перечисление ПеречислениеСсылка.ВидыОперацийВыдачаДенежныхДокументов Мне нужно лишь строковое представление этой ссылки. По сведениям, полученным от asady, у 1С нет преобразователя типов (аналога cast в MS SQL). В частности, нужно генерировать 2 промежуточных запроса, как asady доложил тут: v8: Как в запросе преобразовать ссылку в строку, и прибавить к этой строке ещё строку.. |
|||||||||||||
16
Живой Ископаемый
19.05.11
✎
14:46
|
да, нет, поэтому никак...
может быть ПРЕДСТАВЛЕНИЕ |
|||||||||||||
17
Alexey_Morov
19.05.11
✎
14:54
|
(16)
Пробовал ПРЕДСТАВЛЕНИЕ. Выдаётся ошибка: Неверные параметры в операции приведения. Нельзя преобразовывать поля неограниченной длины. |
|||||||||||||
18
Живой Ископаемый
19.05.11
✎
14:54
|
тогда все.
|
|||||||||||||
19
qwerty09
19.05.11
✎
14:55
|
(16) пытаешся представление строки получить? о_0
|
|||||||||||||
20
Alexey_Morov
19.05.11
✎
14:56
|
(19)
Да, нужно привести ссылку к строке. Почему-то cast и convert не работкают в 1С. |
|||||||||||||
21
Живой Ископаемый
19.05.11
✎
14:58
|
опять же, зная значения перечисления, можно типа так:
ВЫБОР КОГДА ВидОперации=ЗНАЧЕНИЕ(Перечисления.МоеПречисление.МоеЗначение) Тогда "МоеЗначение" |
|||||||||||||
22
qwerty09
19.05.11
✎
14:58
|
ПРЕДСТАВЛЕНИЕ() применимо к ссылочным типам, НО к сожалению недопускает последующей обработки полученной строки в запросе. Полученную таким образом строку конкатенировать с другой строкой не получится, что само по себе печально : (
|
|||||||||||||
23
qwerty09
19.05.11
✎
14:59
|
(21) +1024, я так и выкручивался
|
|||||||||||||
24
Живой Ископаемый
19.05.11
✎
15:00
|
что значит "почему-то" - потому что никто не говорил что будут работать
|
|||||||||||||
25
Лефмихалыч
19.05.11
✎
15:04
|
Загробный адов сотонинский велосипед:
|
|||||||||||||
26
Живой Ископаемый
19.05.11
✎
15:04
|
интересует ограничение - почему все это нужно делать в запросе.
|
|||||||||||||
27
Лефмихалыч
19.05.11
✎
15:05
|
ну, там два бага есть...
|
|||||||||||||
28
Alexey_Morov
19.05.11
✎
15:21
|
Лев Михайлович!
Здорово у Вас получилось перехитрить 1С! Нельзя |
|||||||||||||
29
Лефмихалыч
19.05.11
✎
15:22
|
(28) только науя оно тебе надо, я до сих пор понять не могу
|
|||||||||||||
30
Alexey_Morov
19.05.11
✎
15:23
|
Живой Ископаемый.
Ограничение такое - приведение к строке необходимо по причине динамического генерирования запроса средствами XSLT-преобразования и отсутствия понимания у "движка" будет ли в результате запроса присутствовать поле, ссылающееся на перечисление или нет. Кроме того, приведение к строке необходимо для семантического поиска, подобие которого мы сейчас генерируем средствами C# + MS SQL 2008 + 1C. |
|||||||||||||
31
Alexey_Morov
19.05.11
✎
15:25
|
Лев Михайлович, механизм преобразования к строке необходим для получения метаданных путём запроса, а не тупого дёргания свойств через COM-коннектор.
|
|||||||||||||
32
Ахиллес
19.05.11
✎
15:38
|
(31)Стесняюсь спросить, а сколько раз на дню у вас перечисления меняются?
|
|||||||||||||
33
Alexey_Morov
19.05.11
✎
15:42
|
Не часто. Но вот пихать в запрос временную таблицу с расшифровкой перечисления, а потом с ней джойниться - самый плохой знак. Как минимум это приводит к падению производительности на 30-40%. Посмотрите профайлером и увидите!
|
|||||||||||||
34
Ахиллес
19.05.11
✎
15:47
|
(33) Тебе результат в виде строки нужен? Ну и дёрни его 1 раз через метаданные по ком. Или ты боишься, что за время генерирования текста запроса у тебя перечисления поменяются?
|
|||||||||||||
35
Лефмихалыч
19.05.11
✎
16:02
|
не нарушая лицензионного соглашения, вариантов мало
Можно |
|||||||||||||
36
Alexey_Morov
19.05.11
✎
16:05
|
Слушаюсь, Лев Михайлович.
Можно |
|||||||||||||
37
Ахиллес
19.05.11
✎
16:07
|
(35) Если лицензионное соглашение нарушает закон, то такое соглашение сворачивается в трубочку и запихивается в (_._) тому кто его придумал.
|
|||||||||||||
38
Лефмихалыч
19.05.11
✎
16:09
|
(37) конкретика будет или влужупуком ограничимся? какой закон нарушает лицензионное соглашение 1С?
|
|||||||||||||
39
Ахиллес
19.05.11
✎
16:10
|
(38) Ок. Давай тогда, какой пункт лицензии и как ты можешь нарушить. Я догадываюсь о чём ты, но хочу услышать это от тебя.
|
|||||||||||||
40
Лефмихалыч
19.05.11
✎
16:11
|
(39) чтение напрямую из SQL или 1CD нарушает лицензионное соглашение. Я об этом говорил.
|
|||||||||||||
41
Лефмихалыч
19.05.11
✎
16:12
|
(39) кстати, ты стрелки-то не переводи. Сказал А, говори и Б. Или это был таки-влужупук
|
|||||||||||||
42
Ахиллес
19.05.11
✎
16:12
|
(40) Я понял, что ты об этом говорил, я хочу чтоб ты запостил этот пункт соглашения, мне самому лень. А, я откоменчу.
|
|||||||||||||
43
Alexey_Morov
19.05.11
✎
16:13
|
Лев Михайлович, вот поэтому-то мы и думкаем, как обойтись стандартными средствами. Но в большинстве задач 1С нещадно тормозит. Поэтому ысоконагруженному приложению требется изредка убрать эту самую прослойку в виде 1С.
|
|||||||||||||
44
Живой Ископаемый
19.05.11
✎
16:18
|
как только убираете прослойку, нарушаете лиц.соглашение...
|
|||||||||||||
45
Ахиллес
19.05.11
✎
16:18
|
Если Лефмихалыч вернётся, передайте ему, что я на обед пошёл.
|
|||||||||||||
46
Alexey_Morov
19.05.11
✎
16:24
|
Ахиллес
Слушаюсь. Всё-таки было-бы интересно узнать пункт соглашения в соответствии с которым нарушается лицензионная целостность контракта. |
|||||||||||||
47
Живой Ископаемый
19.05.11
✎
16:26
|
http://v8.1c.ru/predpriyatie/questions_licence.htm
4. Для реализации своих задач Организация предполагает изменить структуру некоторых таблиц базы данных. Также предполагается использовать хранимые процедуры и триггеры для реализации обработки данных, реализовать экспорт данных путем прямого чтения таблиц, добавить новые индексы и изменить структуру некоторых индексов. Имеет ли Организация право вносить в систему перечисленные изменения? Лицензионное соглашение не позволяет использовать недокументированные фирмой "1С" средства для построения решений на платформе 1С:Предприятие. Это означает, что средства СУБД (или любые другие внесистемные средства) можно использовать только в том случае, если документация по продуктам линейки "1С:Предприятие" (включая ИТС) содержит явную рекомендацию использовать данное средство для решения данной задачи. Во всех остальных случаях лицензионное соглашение позволяет использовать для построения решений только штатные средства платформы. В частности, можно обращаться к данным информационной базы только при помощи объектов "1С:Предприятия", специально предназначенных для работы с данными (запросы, справочники, документы и т.д.). Нельзя обращаться к данным информационной базы напрямую, минуя уровень объектов работы с данными "1С:Предприятия" - например при помощи средств СУБД или при помощи внешних компонент, которые реализуют прямой доступ к СУБД. Это ограничение распространяется на любые действия с данными, в том числе на изменение их структуры, а так же на чтение или изменение самих данных информационной базы или служебных данных "1С:Предприятия". Данное ограничение необходимо для обеспечения стабильности работы механизмов системы, осуществления поддержки и возможности перехода на новые версии "1С:Предприятия". |
|||||||||||||
48
Живой Ископаемый
19.05.11
✎
16:29
|
но это конечно не лиц. соглашение...
|
|||||||||||||
49
Лефмихалыч
19.05.11
✎
16:51
|
(42) вот копипаста из %programfiles%\1cv82\8.2.11.229\licenses\1CEnterprise_ru.htm
|
|||||||||||||
50
Ахиллес
19.05.11
✎
16:58
|
(48) Вот именно. Фирма 1С запрещает мне доступ к МОИМ данным, которые лежат в МОЕЙ СУБД (MSSQL)
Если учесть, что сервер бд и сервер 1С запросто могут жить на разных компьтерах (да хоть на разных континентах) и админится разными людьми, то вообще не понятно, какое отношение программа 1С имеет к совершено посторонним для неё программам и данным. Кроме того лицензия ограничивает тебя в праве пользоваться всеми возможностями ДРУГОЙ программы. Микрософт разрешил мне профайлером пользоваться, а 1С запретил, при этом профайлер 1С не принадлежит. (48)ВСЁ СОДЕРЖИМОЕ, то бишь ВСЕ ДАННЫЕ принадлежат МНЕ и только МНЕ, имею право делать с ними всё, что захочу, никакая 1С не в праве ограничивать меня в доступе к МОЕЙ информацией. >доступ к информационной базе ПРОГРАММНОГО ПРОДУКТА это вообще бред сивой кобылы. Никакой базы ПРОГРАММНОГО ПРОДУКТА в природе не существует. Базой данных является в данном случае программа MSSQL. Одинэс это всего лишь оболочка дешёвая. Нашлёпка на БАЗУ ДАННЫХ. |
|||||||||||||
51
Лефмихалыч
19.05.11
✎
16:58
|
Кстати, более у*бищного лицензионного соглашения я, пожалуй не видел. Оно опирается на понятие "Клиентская лицензия", отличное от понятия "Аппаратный ключ защиты", а определения этого понятия нет вообще ни где.
|
|||||||||||||
52
Живой Ископаемый
19.05.11
✎
17:00
|
ну... короче, лиц. соглашение - это дело 10-е... я не думаю что это кто-то когда-то проверит, разве что решение будет тиражным...
просто суть в том, что язык запросов напрямую получить желаемое (0) не позволяет. |
|||||||||||||
53
Лефмихалыч
19.05.11
✎
17:05
|
(50) все верно - сноси 1С:Предприятие и пользуйся своими данными, как хочешь. Как этот идиотизм 1С себе представляет - ума не приложу, но в случае чего оправдаться будет довольно затратно по деньгам и времени.
|
|||||||||||||
54
Alexey_Morov
19.05.11
✎
17:08
|
Господа, как же так? Ведь получается что 1С запрещает МНЕ получать доступ к МОИМ данным, которые лежат в МОЕЙ СУБД!!!
Это же противозаконно!!! Как же так?? |
|||||||||||||
55
Ахиллес
19.05.11
✎
17:08
|
(53) Прикинь. Снесу 1С а данные то останутся. А если на компьютере 1С даже не ночевало никогда? Имею, я тогда право написать прямой скуль запрос и вытянуть из базы всё, что мне надо? Оттож! Мои права это мои права, а мои данные это мои данные.
|
|||||||||||||
56
Ахиллес
19.05.11
✎
17:11
|
(54) Подай на них в суд. С требованием признать данный пункт соглашения недействительным.
|
|||||||||||||
57
Лефмихалыч
19.05.11
✎
17:23
|
(55) можешь. Ты не можешь использовать 1С:Предприятие и одновременно прямые запросы к базе запрашивать. При этом если она у тебя установлена, значит используешь:
|
|||||||||||||
58
Лефмихалыч
19.05.11
✎
17:24
|
(54) использовать 1С:Предприятие и получать доступ одновременно, вот, что запрещает лиц. соглашение. Не используй 1С:Предприятие и делай с данными, что хочешь.
|
|||||||||||||
59
Ахиллес
19.05.11
✎
17:35
|
(58) Ты уж договаривай. Доступ к ЧЕМУ? Ещё раз. Если на компьютере не установлено 1С, фирма 1С тогда претензий иметь не будет? Например прямые запросы пишет программист аудитора. Разрешение аудитору на ознакомление с моей информацией я дал.
Есди дядя Боря сдвинет брови и скажет НИЗЯЯЯ, то это не означает, что его НИЗЯЯЯ будет иметь силу закона и обязательным к исполнению. Вполне может оказаться, что в ответ он услышит - АЙ-ЯЙ-ЯЙ! И пойдет лесом. |
|||||||||||||
60
Лефмихалыч
19.05.11
✎
17:37
|
(59) слушай, ты уже покажешь хоть одну копипасту закона или статьи и пункта закона, который нарушается лиц.соглашением или так и будешь общечеловеческими досужими соображениями рассуждать?
|
|||||||||||||
61
Живой Ископаемый
19.05.11
✎
17:39
|
я прошу прощения - это по-прежнему технологическая ветка или уже казуистическая?
|
|||||||||||||
62
hhhh
19.05.11
✎
17:44
|
(43) а почему нельзя вытащить имя перечисления прямым запросом к SQL? Зачем вам 1С понадобилась для этого?
|
|||||||||||||
63
Лефмихалыч
19.05.11
✎
17:45
|
(61) тебе жалко штоле?
(62) патамушта (49) |
|||||||||||||
64
Ахиллес
19.05.11
✎
17:47
|
(62) Дядя Боря сказал - низя! Иначе - твой дом турма :-)
Но поскольку я не юрист, сын юриста, то объяснить со ссылками на конкретные статьи закона Лефмихалычу всю бредовость этого запрета у меня пока не получается. |
|||||||||||||
65
Лефмихалыч
19.05.11
✎
17:48
|
(64) ну, так бы сразу и сказал - влужупук. Время бы сэкономили.
|
|||||||||||||
66
Живой Ископаемый
19.05.11
✎
17:49
|
чуваки, просто делайте скидку на то что это написано в Лиц.соглашении исключительно как защита от тиражных решений.. Если ты у себя будешь что-то там получать прямым запросом - никто тебя не будет проверять.
|
|||||||||||||
67
Лефмихалыч
19.05.11
✎
17:49
|
Вообще, в целом, если взять это ебанистическое лицензионное соглашение, соединить его полным внешним соединением с еще более бессмысленным и беспощадным бляццким законодательством РФ в области защиты авторских и смежных прав, то можно всю страну без трусов в коленно-локтевой оставить
|
|||||||||||||
68
Лефмихалыч
19.05.11
✎
17:50
|
(66) если бы смысл бы в тиражных решениях, это было бы не в лицсоглашении, а в требованиях 1С:Совместимо
|
|||||||||||||
69
Лефмихалыч
19.05.11
✎
17:54
|
(64) вот пришли к тебе дяди в погонах и говорят: "Ты, как видно, грешишь нарушением лицензионного соглашения посредством чтения данных прямыми запросами из базы 1С:предприятия. Пойдем сидеть турьма"
Что ты им скажешь? Что "это всё бред" и "это мои данные"? Ну, судить-то тебя будут по законодательству, которое этот бред допускает. И похрену там будет сын ты юриста или сам юрист. Твоя задача будет доказать, что ты не верблюд, а для этого пустых лозунгов: "это всё противоречит здравому смыслу" зело недостаточно. |
|||||||||||||
70
hhhh
19.05.11
✎
17:55
|
(63) вроде (49) этим не нарушается.
|
|||||||||||||
71
Лефмихалыч
19.05.11
✎
17:57
|
(70) прямые запросы и манипулирование данными не средствами платформы относится к категории "средств и технологических решений, не предусмотренных в сопроводительной документации"
Так что нарушает со свистом |
|||||||||||||
72
hhhh
19.05.11
✎
18:00
|
(71) но я не собираюсь получать ДОСТУП с помощью технологических решений. Доступ я получу как обычно через ввод пароля.
|
|||||||||||||
73
Ахиллес
19.05.11
✎
18:16
|
(65) Кто то припрёрся ко мне и заявит, что, я не имею права распоряжаться моими данными по моему усмотрению. Я уверен, что мои права нарушены, конкретную статью адвокат пусть знает.
|
|||||||||||||
74
Immortal
19.05.11
✎
18:18
|
(72) поищи в партнерке, нельзя так.
|
|||||||||||||
75
kiruha
19.05.11
✎
18:30
|
(33)
>>Не часто. Но вот пихать в запрос временную таблицу с расшифровкой перечисления, а потом с ней джойниться - самый плохой знак. Как минимум это приводит к падению производительности на 30-40%. Посмотрите профайлером и увидите! Это с какого перепоя джойн с временной таблице снижает производительность на 40% ? Запихал в начале соединения и успокоился. Объясните ка. Только не надо "я мерял, посмотрите, зуб даю" |
|||||||||||||
76
kiruha
19.05.11
✎
18:40
|
+
Сколько тысяч значений у вашего перечисления ? |
|||||||||||||
77
akostrov
19.05.11
✎
18:41
|
А причем здесь запрос вообще? Речь идет о метаданных в базе, работать надо с объектом метаданных.
|
|||||||||||||
78
Живой Ископаемый
19.05.11
✎
18:48
|
а раз решение не тиражное, раз данные свои, то откуда нарисовалась необходимость динамически строить запрос да еще и с синонимом и со всем свистом?
|
|||||||||||||
79
kiruha
19.05.11
✎
18:54
|
К (25)
добавить ИНДЕКСИРОВАТЬ ПО если много значений |
|||||||||||||
80
Злобный Фей
19.05.11
✎
18:58
|
(69) Вообще-то в случае "Пойдем сидеть турьма" доказывать будут дяди в погонах. Презумпция невиновности, етить.
Как же так??? |
|||||||||||||
81
Alexey_Morov
19.05.11
✎
22:33
|
(76)
Перечислений у нас много - около 300. У каждого перечисления - 14-20 значений. Что же делать? Всё же так тормозить будет, если надо будет джойниться с временной таблицей, куда запихну перечисление и его значения. |
|||||||||||||
82
kiruha
20.05.11
✎
00:08
|
(81)
Модифицируй (25) Индексировать |ВЫБРАТЬ | ВТ.Значение, | ВТ.Имя, | ВТ.СИноним, | ВТ.Комментарий, | ВТ.Порядок |ПОМЕСТИТЬ ВТ |ИЗ | &ВТ КАК ВТ |Индексировать По ВТ.Значение если соединяешься по значению |
|||||||||||||
83
kiruha
20.05.11
✎
00:10
|
|ВЫБРАТЬ
| ВТ.Значение, | ВТ.Имя, | ВТ.СИноним, | ВТ.Комментарий, | ВТ.Порядок |ПОМЕСТИТЬ ВТ |ИЗ | &ВТ КАК ВТ |Индексировать По Значение |
|||||||||||||
84
Immortal
20.05.11
✎
00:23
|
(81)моя думать, что ваша нерационально напроектировала структуру БД
|
|||||||||||||
85
Alexey_Morov
20.05.11
✎
00:23
|
kiruha
Что-то MS SQL 2008 сильно поплохело после того, как я попытался так сделать. План запросов просто кошмарный.... Как же так???? |
|||||||||||||
86
Alexey_Morov
20.05.11
✎
00:24
|
Immortal
У нас хитрая система. Развивается почти 5 лет. Кода написано около 9 млн строчек. А у Вас какая была самая большая система? |
|||||||||||||
87
Immortal
20.05.11
✎
00:30
|
(86)хз, по строчкам не считал, нет данных
вполне возможно, я с более "мелкими" системами работаю что то меня даже заинтересовала эта система, область применения какая? |
|||||||||||||
88
kiruha
20.05.11
✎
00:32
|
(86)
Нельзя ли полный запрос ? |
|||||||||||||
89
H A D G E H O G s
модератор
20.05.11
✎
00:33
|
(87) "Сделать и забыть"
|
|||||||||||||
90
Alexey_Morov
20.05.11
✎
00:42
|
Immortal
Областей применения несколько 1. Риск-менеджмент финансовых потоков с онлайн прогнозированием некоторых зон методом Рунге-Кутта и с применением финансово-аналитических методик Фуллмера, Чессера. Ядро написано на С± 2. Интеграция с системами 3D-моделирования и средствами векторной графики (сейчас это AutoCAD, CorelDraw, Unity3D) 3. Инженерные расчёты (подбор из номенклатуры узлов и компонентов на основе сложнопараметрических данных и на основе усталостной прочности, электротеплопроводности, стоимости и т.д..) Как внешнее ядро расчётов используем Mechanical Desktop. 4. Мониторинг персонала (не только с применением отчётности о движении, но и с прогнозированием на основе методик Леонтьева, Вежбицкой и Льва Выгодского). 5. Сложные конструкторы по динамической самосборке модулей и плагинов в зависимости от внешних факторов (от прав пользователя, от регионального расположения пользователя, времени года, типа переданных данных и метаданных).... ну и описывать систему можно часами. В целом она служит сразу для решения комплексных задач. Сейчас система стоит в РАН, РАМН и кое-где в инженерных лабораториях по производству. |
|||||||||||||
91
H A D G E H O G s
20.05.11
✎
00:44
|
(90) Сходу! Что делает метод Рунге-Кутта?
|
|||||||||||||
92
Immortal
20.05.11
✎
00:45
|
(90)я все понимаю(вернее часть не понимаю, но имею представление), но что то часть задач далека от учета на предприятии, а 1с - именно под это
|
|||||||||||||
93
kiruha
20.05.11
✎
00:47
|
Что такое
"прогнозированием на основе методик Леонтьева, Вежбицкой и Льва Выгодского" ??? Леонтьев , я так понимаю психолог, а не экономист |
|||||||||||||
94
Ахиллес
20.05.11
✎
10:51
|
(86) Я лучше лишних два часа посижу подумаю, а потом напишу пятьсот строк кода, чем эти два часа колотить бездумно по клаве.
Выдавливай из себя семёрошника по капле. Перечисление с 20 значениями в снеговике называется регистром сведений. Смотря для чего эти перечисления, может там и пяти регистров хватит. |
|||||||||||||
95
Лефмихалыч
20.05.11
✎
11:00
|
+(93) а Выгодский - педагог
|
|||||||||||||
96
Alexey_Morov
20.05.11
✎
16:32
|
Как в параметр запроса добавить значение перечисления через COM-соединение?
Т.е. string request = "SELECT T.Комментарий, T.КратностьВзаиморасчетов, T.КурсВзаиморасчетов, T.ВидОперации, T.ВалютаДокумента.НаименованиеПолное FROM Документ.ВыдачаДенежныхДокументов AS T where (ВидОперации = &p0)"; object oQuery = Connector.CreateObject("Query", null); Connector.SetProperty(oQuery, "Text", new object[] {request}); Connector.SetProperty(oQuery, "Text", new object[] { request }); // устанавливаем параметр p0 - ссылку на значение перечисление object reference = Connector.GetProperty(Connector.Connection, "Перечисления"); reference = Connector.GetProperty(reference, "ВидыОперацийВыдачаДенежныхДокументов"); reference = Connector.GetProperty(reference, "ВыдачаПодотчетномуЛицу"); Connector.InvokeMethod(oQuery, "УстановитьПараметр", new object[] { "p0", reference}); Параметр вроде бы добавляется без ошибок, запрос отрабатывает нормально. Но ни одной строки не возвращается. Хотя должны возвращаться строки! Как правильно загнать в параметры запроса значение перечисления через C#? Читал Книга знаний: v8: Получение ссылки по GUIDу в COMConnector; http://help1c.hdd1.ru/index.php?t=38&hl= v8: перенос даных через COM-соедиенение 1с Нельзя |
|||||||||||||
97
Лефмихалыч
20.05.11
✎
16:33
|
(96) в том и прелесть перечислений, что параметр тут не нужен чуть более, чем наиух
|
|||||||||||||
98
Alexey_Morov
20.05.11
✎
16:38
|
Лев Михайлович, нНе будет ли проблем в таком случае с SQL-injection? То есть с попыткой вставить небезопасный код?
Дело в том, что название перечисление и его значение на которое нужно повесить фильтр в звпросе берется у меня из строкового значения, которое пользователь ввёл в поле ввода в приложении (TextBox). |
|||||||||||||
99
Alexey_Morov
20.05.11
✎
16:43
|
Докладываю, в принципе получилось выбирать записи.
Но всё-таки тревожит проблема возможной попытки вставки плохого кода. Спасибо, Лев Михайлович. Где тут Вам можно поставить плюсик, чтобы поднять Ваш рейтинг? |
|||||||||||||
100
Grusswelle
20.05.11
✎
16:52
|
100
|
|||||||||||||
101
Alexey_Morov
20.05.11
✎
17:02
|
Grusswelle
Как же так??? Как же так??? |
|||||||||||||
102
Rabbit
20.05.11
✎
17:22
|
(98) красиво заливаешь
|
|||||||||||||
103
H A D G E H O G s
20.05.11
✎
17:23
|
(101) Что там с Рунге-Куттом? А то ситуация напоминает "Сердечник трансформатора сделан из дерева"...
|
|||||||||||||
104
Лефмихалыч
20.05.11
✎
17:30
|
(98) ты там программист или кто? замени TextBox на ComboBox - значения известны заранее и их можно через метаданные все получить.
Вообще "название перечисление и его значение на которое нужно повесить фильтр в звпросе берется у меня из строкового значения, которое пользователь ввёл в поле ввода" - это называется индийским кодом |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |