|
запрос sql как отладить? | ☑ | ||
---|---|---|---|---|
0
фросия
15.07.14
✎
07:05
|
Добрый день.
есть у меня база 1сная, и есть внешний запрос sql, который запускает внешняя левая программа. нужно этот запрос чуток подкорректировать, но для этого узнать что он вообще берет и откуда. как/где это можно глянуть? второй вопрос- если запрос работает для серверной базы- будет ли для файловой работать? |
|||
1
skunk
15.07.14
✎
07:07
|
1)глянуть можно в менеджере скулятины
2)внешний скульный запрос для файловой работать не будет |
|||
2
tdm
15.07.14
✎
07:08
|
(0)отладить можно в скуль профайлере (хотя версия скуля у вас какая ?) и для файловой работать не будет естественно
|
|||
3
andreymongol82
15.07.14
✎
07:08
|
Ну так-то прямые запросы к 8-ке нарушение лицензии.
А так есть Менеджмент студия, где и навигатор и профайлер есть. Для файловой работать не будет. |
|||
4
фросия
15.07.14
✎
07:13
|
ясно. первым делом надо sqlсервер ставить и потом уже все остальное.
ок. еще такой вопрос:вот в 1ске у меня все таблички, реквизиты и прочее по-русски называются, а запрос этот по англ их обзывает(наверное по именам таблиц?) как узнать какая моя табличка какое имя имеет? |
|||
5
Wobland
15.07.14
✎
07:15
|
получить структуру хранения
|
|||
6
DrZombi
гуру
15.07.14
✎
07:16
|
(0) SQL запросы отлаживают на SQL сервере, в SQL 2000 это был QA, в последующих версия все делается через менеджер SQL :)
|
|||
7
DrZombi
гуру
15.07.14
✎
07:17
|
(0) Покажи Код запроса SQL...
И задавай конкретные вопросы, коль не можешь понять его буковки :) |
|||
8
фросия
15.07.14
✎
07:17
|
еще вопрос: если взять просто выгрузку базы и развернуть её на новом сервере- таблицы переобзовутся? или они всегда одинаковые будут?
|
|||
9
фросия
15.07.14
✎
07:19
|
(7) да буковки то я понимаю, знать бы где посмотреть. а самый лучший варинат- глянуть результат этого запроса и написать такой же но по-русски.
|
|||
10
фросия
15.07.14
✎
07:19
|
(5) как?
|
|||
11
Wobland
15.07.14
✎
07:20
|
(10) программно
|
|||
12
Wobland
15.07.14
✎
07:21
|
(9) переводил я как-то sqlный запрос на язык 1С. борода в полметра выросла
|
|||
13
фросия
15.07.14
✎
07:24
|
(11) волшебные слова подскажешь?
|
|||
14
DrZombi
гуру
15.07.14
✎
07:24
|
(8) Какую выгрузку? SQL?, тогда нет.
Пиши подробнее, нам тут плохо видно, что там у тебя :) |
|||
15
Wobland
15.07.14
✎
07:25
|
(13) Возвращает таблицу значений с описаниями структуры таблиц, индексов и полей базы данных в терминах модели базы данных 1С:Предприятия или используемой СУБД, в зависимости от значения параметра "Имена базы данных".
|
|||
16
DrZombi
гуру
15.07.14
✎
07:26
|
(15) Ты уж дай человеку обработку, которая это возвращает :)
|
|||
17
фросия
15.07.14
✎
07:26
|
(12) там малюсенький запрос. который просто сальдо по счетам на конец периода выгружает в табличку. мне нужно дописать что б некоторые счета развернутыми по субконто выгружал.
|
|||
18
Wobland
15.07.14
✎
07:26
|
(16) сейчас кофе допью и немедленно приступлю к творению
|
|||
19
фросия
15.07.14
✎
07:26
|
(16) не дай, а скажи где взять
|
|||
20
Wobland
15.07.14
✎
07:27
|
(19) начни поиск с СП
|
|||
21
фросия
15.07.14
✎
07:28
|
(16) можно просто подсказать: это можно глянуть в 1ске, или - это тебе надо у sql сервера спросить
|
|||
22
Wobland
15.07.14
✎
07:28
|
(21) это можно глянуть в 1ске
|
|||
23
Sammo
15.07.14
✎
07:28
|
ленитесь мадам.
Вам еще в 5 сказали Синтаксис: ПолучитьСтруктуруХраненияБазыДанных(<ОбъектыМетаданных>, <ИменаБазыДанных>) |
|||
24
фросия
15.07.14
✎
07:29
|
(20)ПолучитьСтруктуруХраненияБазыДанных() ща погляжу
|
|||
25
Wobland
15.07.14
✎
07:30
|
(24) не за что
|
|||
26
фросия
15.07.14
✎
07:31
|
(25) спасибо
|
|||
27
skunk
15.07.14
✎
07:41
|
внешний скульный запрос это хорошо конечно, но с восьмёркой может такая опа наступить при его использовании
|
|||
28
DrZombi
гуру
15.07.14
✎
07:43
|
(19) Где то было
А вот где подсмотрел v8: Где прочитать про соответствие таблиц SQL и элементов 1С ? Пост 7 Пример... &НаКлиенте Процедура Команда1(Команда) // Вставить содержимое обработчика. ПолучитьНаСервере(); КонецПроцедуры &НаСервере Процедура ПолучитьНаСервере() ДокМТ = Метаданные.Документы.БагажнаяВедомость; ТЗ = ПолучитьСтруктуруХраненияБазыДанных(ДокМТ,Истина); //Вернет ТЗ, вида ТЗ ТаблицаЗначений ТаблицаЗначений Индексы ИндексыКоллекции ИндексыКоллекции Колонки КоллекцияКолонокТаблицыЗначений КоллекцияКолонокТаблицыЗначений ИмяТаблицы КолонкаТаблицыЗначений КолонкаТаблицыЗначений ИмяТаблицыХранения КолонкаТаблицыЗначений КолонкаТаблицыЗначений Индексы КолонкаТаблицыЗначений КолонкаТаблицыЗначений Метаданные КолонкаТаблицыЗначений КолонкаТаблицыЗначений Назначение КолонкаТаблицыЗначений КолонкаТаблицыЗначений Поля КолонкаТаблицыЗначений КолонкаТаблицыЗначений КонецПроцедуры |
|||
29
Necessitudo
15.07.14
✎
07:45
|
(27) Какая?
|
|||
30
DrZombi
гуру
15.07.14
✎
07:46
|
(29) 8-ая 1С хранить совместно с обычными данными еще и Двоичные данные.
А так, можно и на прямых писать, если Структура данных не с ложная :) |
|||
31
skunk
15.07.14
✎
07:47
|
(29)ну например решишь ты сделать новую базу или узел выделить ... и в 90% случаях внешний скульный запрос работать не будет
|
|||
32
фросия
15.07.14
✎
07:47
|
(7) код говоришь...
вот кусочек который мне совсем не понятен: /*SELECT ... month(t1._Period) as FiscalMonth, '20'+right(year(t1._Period),2) as FiscalYear, 'Tenge' as LocCurr,... FROM Base2013.dbo._AccRg10534 AS t1 LEFT OUTER JOIN Base2013.dbo._Acc10 AS t2 ON t1._AccountDtRRef = t2._IDRRef /* and t1._AccountCtRRef = t2._IDRRef*/ /*LEFT OUTER JOIN Base2013.dbo._Reference66 AS t2 ON t1._Fld9528RRef = t2._IDRRef*/ where year(t1._Period)=4014 and month(t1._Period)=06 and day(t1._Period)=11*/ почему год 4014? |
|||
33
skunk
15.07.14
✎
07:48
|
(32)это они так хитро решили проблему 2000 года
|
|||
34
фросия
15.07.14
✎
07:48
|
(27) он просто данные считывает, в базе ничего не меняет.
|
|||
35
фросия
15.07.14
✎
07:48
|
(33) что за проблема 2000 года?
|
|||
36
DrZombi
гуру
15.07.14
✎
07:49
|
(32) /* - Эир комментарий :)
|
|||
37
DrZombi
гуру
15.07.14
✎
07:49
|
+(36) Это
|
|||
38
skunk
15.07.14
✎
07:49
|
(34)да без разницы ... все равно работать не будет
|
|||
39
DrZombi
гуру
15.07.14
✎
07:49
|
>>> почему год 4014?
Он закомментирован ;) |
|||
40
фросия
15.07.14
✎
07:50
|
то, что не закомменитровано- тоже самое там.
|
|||
41
skunk
15.07.14
✎
07:51
|
||||
42
фросия
15.07.14
✎
07:51
|
(31) думаю для новой базы можно просто новые имена табличек прописать и все будет работать.
|
|||
43
Sammo
15.07.14
✎
07:52
|
(35) Подсказка. При создании базы спрашивает - какое указать смещение (0 или 2000)
|
|||
44
skunk
15.07.14
✎
07:52
|
(42)не только табличек, еще и полей ... но если все сделаешь правильно то работать будет ... просто это придется делать каждый раз
|
|||
45
фросия
15.07.14
✎
07:53
|
(44) тот, кто сделал это один раз сделает еще раз. я так думаю.
|
|||
46
фросия
15.07.14
✎
07:54
|
(43) уже объяснили, спс
|
|||
47
DrZombi
гуру
15.07.14
✎
07:54
|
(42) А зачем вообще там прямой запрос?
|
|||
48
skunk
15.07.14
✎
07:55
|
(45)а для чего такой геморрой? ... такой запрос и в самой 1с нормально отработает
|
|||
49
DrZombi
гуру
15.07.14
✎
07:55
|
(45) Еще подумай, Может тот кто это навоял, уже на другом рабочем месте :)
|
|||
50
DrZombi
гуру
15.07.14
✎
07:56
|
(48) ... Приходит только одна "Телепатическая" мысль.
Они не захотели заморачиваться КОМ соединением :) |
|||
51
DrZombi
гуру
15.07.14
✎
07:56
|
+(50) Видимо платформы 1С серверов разные :)
|
|||
52
фросия
15.07.14
✎
07:59
|
(47) (50) потому что тот, кто писал запрос этот 1с ку вообще не знает.
|
|||
53
skunk
15.07.14
✎
07:59
|
(50)тоже такая мысля есть ... возможно даже не из 1с будут его выполнять ... особенно при вопросе "будет ли для файловой работать"
|
|||
54
skunk
15.07.14
✎
07:59
|
(52)бугага )))) ... я не могу ... ну развеселила)))
|
|||
55
фросия
15.07.14
✎
08:00
|
(49)неважно
|
|||
56
фросия
15.07.14
✎
08:04
|
(54) честно. он даже не знает что в 1ске аналитический учет ведется не только по счетам но и по субконто. и предложил завести куеву тучу забалансовых счетов для каждой статьи затрат, и прочего...
|
|||
57
DrZombi
гуру
15.07.14
✎
08:04
|
(52) Ага... а Поля он наугад указывал, а теперь ты тут голову ломаешь про 4014 год :)
|
|||
58
skunk
15.07.14
✎
08:05
|
(56)ну так переделай в 1с и не парься)))
|
|||
59
фросия
15.07.14
✎
08:06
|
(57) по 4014 год я не ломала голову- я просто не поняла зачем такой огород городить.
а поля... в sql поглядел наверное. не знаю |
|||
60
skunk
15.07.14
✎
08:06
|
(57)ну год можно в менеджере глянуть(некоторые даже ругаются, что за "хня") ... а вот с полями да ... как минимум про получить структуру знал
|
|||
61
МихаилМ
15.07.14
✎
08:06
|
за
where year(t1._Period)=4014 and month(t1._Period)=06 and day(t1._Period)=11 надо кастрировать автора запроса. животное не знает , что такое индекс. |
|||
62
фросия
15.07.14
✎
08:08
|
(58)что б переделать- мне надо посмотреть что там получается в итоге- у меня таких запросов- несколько.
потому и спрашивала- как поглядеть что запрос этот тащит |
|||
63
фросия
15.07.14
✎
08:09
|
(60) хз как там было.
|
|||
64
МихаилМ
15.07.14
✎
08:11
|
начиная с 14 релиза. 1с стала сохранять оригинальные имена таблиц при выгрузке-загрузке из dt.
но при смене платформы с 8.2 на 8.3 названия некоторых полей изменены. соответствия названий полей метаданных и бд хранится в таблице params, записи dbmames |
|||
65
skunk
15.07.14
✎
08:12
|
(63)получаешь структуру ... и дальше вместо полей и таблиц в скуле ставишь 1с имена ...
|
|||
66
МихаилМ
15.07.14
✎
08:15
|
(60)
смещение хранится в таблице _YearOffset |
|||
67
МихаилМ
15.07.14
✎
08:17
|
если автор имеет доступ к базе 1с через 1с.
то логичнее было бы переписать запрос обратно на запрос 1с. и вызывать его по COM |
|||
68
DrZombi
гуру
15.07.14
✎
08:19
|
(60) Вот и я так подумал. Коль получил структуру, значит получил Обработку, может и не сам. Но получил :)
|
|||
69
skunk
15.07.14
✎
08:20
|
(66)я знаю где и что хранится ... а вот человек рисующий внешний запрос мог не знать, ... и скорее всего не знал
|
|||
70
DrZombi
гуру
15.07.14
✎
08:20
|
(63) Перепиши все на КОМ соединение, если конечно не окажется так, что сервера вообще на разных континентах :)
|
|||
71
фросия
15.07.14
✎
08:28
|
(67) в том то и дело что не 1с-1с
|
|||
72
DrZombi
гуру
15.07.14
✎
08:28
|
(66) А оно там в каком виде?
|
|||
73
фросия
15.07.14
✎
08:29
|
(70) кстати не исключено. так что помучаюсь, и что-нибудь придумаю. ушла думать
|
|||
74
DrZombi
гуру
15.07.14
✎
08:29
|
(71) Тогда что это, коль не 1С?
Напиши хоть, что с чем связывается? К примеру: FoxPRO обращается к 1С БД через SQL.... и мы поймем :) |
|||
75
фросия
15.07.14
✎
08:36
|
(74) sap. или какаято ещё программа.
|
|||
76
skunk
15.07.14
✎
08:51
|
(75)вы через xi сапоский общаетесь?
|
|||
77
фросия
15.07.14
✎
08:52
|
(76) мы вообще не общаемся
|
|||
78
skunk
15.07.14
✎
09:01
|
(77)я имел ввиду твой сап к 1с как обращается
|
|||
79
Sammo
15.07.14
✎
09:23
|
(71) Если поддерживает ком, то вызов через ком 1с, которая может предоставить необходимые данные в другую базу.
Если кома нет, то можно сделать через промежуточную скулевую базу, когда 1с-ка периодически опрашивает, как увидела параметры - делает запрос и результат выкладывает. И прочая... Но прямой доступ к базе, имхо, некамильфо. |
|||
80
Dionis Sergeevich
15.07.14
✎
09:24
|
sql navigator например
|
|||
81
фросия
15.07.14
✎
09:34
|
(78) это не мой сап, я даже не уверена что это сап.
не знаю как, знаю только что как-то обращается. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |