Опрос
Опрос закрыт Тема Опроса: Поправить работу метапарсера?
bars   pie
*** Этот Опрос был завершен ***


Да    
  3 (33.3%)
Нет    
  6 (66.7%)




Всего голосов: 9
« Создано: spock : 03. Апреля 2007 :: 04:41 »
Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Нужно ли поправить метапарсер для такого рода QRY? (число прочтений - 6098 )
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Нужно ли поправить метапарсер для такого рода QRY?
03. Апреля 2007 :: 04:40
Печать  
Например, запрос такого вида не проходит через метапарсер:
Код
Выбрать все
SELECT $ДокументСтроки.РасходнаяНакладная.iddoc
FROM $ДокументСтроки.РасходнаяНакладная (nolock)
 


Ругается на iddoc, что нет такого метаимени. И я с ним согласен.
Если iddoc заменить на идентификатор из метаданных, то все ОК.
Конечно, если переписать запрос через алиасы, то такой проблемы не будет:
Код
Выбрать все
SELECT Dt.iddoc
FROM $ДокументСтроки.РасходнаяНакладная as Dt (nolock)
 


Но тогда требуется уточнить документацию и отразить такой момент.
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #1 - 03. Апреля 2007 :: 04:44
Печать  
ИМХО - поведение верное.
Нужно просто поправить доку, указав этот момент.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #2 - 03. Апреля 2007 :: 04:47
Печать  
artbear писал(а) 03. Апреля 2007 :: 04:44:
ИМХО - поведение верное.

Нука, а почему ты так считаешь?
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #3 - 03. Апреля 2007 :: 05:13
Печать  
Мое имхо - меня устроят оба варианта Улыбка
но ты дал только два варианта - да или нет Улыбка
И я выбрал нет  Смех
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #4 - 03. Апреля 2007 :: 07:54
Печать  
Не хватает варианта 'хз',   Подмигивание
т.к. через метапарсер проходит такой
Код
Выбрать все
SELECT $ДокументСтроки.РасходнаяНакладная .iddoc
FROM $ДокументСтроки.РасходнаяНакладная (nolock) 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #5 - 03. Апреля 2007 :: 18:14
Печать  
Я за! Облегчит чтение кода...



Вопрос не по теме. А почему Select $Константа.КакойНиТоПрописанныйОбъект (например справочник), не возвращает значение данной константы?
Может быть логичнее возвращать? Улыбка
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #6 - 03. Апреля 2007 :: 22:19
Печать  
Непривычно ты предлагаешь Улыбка
Главное шоп работало...
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #7 - 04. Апреля 2007 :: 05:30
Печать  
IMHO, это не облегчение кода, а восстановление логичного поведения.
Получается, что, начав писать, запрос без алиасов, получаешь ошибку, которой не должно быть.

По мне, так выражение
Код
Выбрать все
$ДокументСтроки.РасходнаяНакладная.IDDOC 


должно с таким же успехом транслироваться, как и
Код
Выбрать все
$ДокументСтроки.РасходнаяНакладная.Товар 

  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #8 - 04. Апреля 2007 :: 05:54
Печать  
гипотетически представим наличие реквизита документа с идентификатором iddoc
  

1&&2&&3
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #9 - 04. Апреля 2007 :: 05:57
Печать  
trad писал(а) 04. Апреля 2007 :: 05:54:
гипотетически представим наличие реквизита документа с идентификатором iddoc

Замечательная причина Улыбка
+1
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #10 - 04. Апреля 2007 :: 06:22
Печать  
Гипотетически еще нужно представить реквизиты:
ROW_ID
LINENO_
IDDOC
PERIOD
ACTNO
DEBKRED
IDDOCDEF
DATE_TIME_IDDOC
ID
CODE
DESCR
ISMARK
VERSTAMP
PARENTEX
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #11 - 04. Апреля 2007 :: 07:29
Печать  
ну да, и их тоже
  

1&&2&&3
Наверх
 
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #12 - 04. Апреля 2007 :: 07:44
Печать  
$ДокументСтроки.РасходнаяНакладная.<ХитроеПоле>

Если <ХитроеПоле> реквизит метаданных, то резольвим как метаданные.
Если <ХитроеПоле> не реквизит метаданных, то валится исключение (а оно валится), которое ловим и проверяем <ХитроеПоле> на принадлежность списку внутренних полей.
Если <ХитроеПоле> не метаданные и не принадлежит списку полей, то отправляем исключение дальше.

Что за детсад? Все уже продумано. Улыбка
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #13 - 04. Апреля 2007 :: 08:33
Печать  
spock писал(а) 04. Апреля 2007 :: 07:44:
Что за детсад? Все уже продумано. Улыбка

Улыбка
Никто и не спорит - реализация, конечно же, очевидна.
Думаешь, при реализации метапарсера, DmitrO не прорабатывал эту ситуацию?
Дело, имхо, всеже в разделении понимания метаимен и не метаимен.
Методолгия типа...
Может я, конечно, заблуждаюсь.
  

1&&2&&3
Наверх
 
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужно ли поправить метапарсер для такого рода
Ответ #14 - 04. Апреля 2007 :: 08:36
Печать  
Если честно, то эта ветка как раз на DmitrO и была расчитана.
А голосУвалка для вида Улыбка
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать