Переключение на Главную Страницу Страницы: 1 ... 9 10 [11] 12 13 ... 60 ОтправитьПечать
Очень популярная тема (более 25 ответов) Класс "ПрямойЗапрос" (число прочтений - 331621 )
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #150 - 18. Августа 2009 :: 05:15
Печать  
2 leshik
Конечно мне не очень хотелось бы чтобы КОП был завязан на конфигурации, или требовал ее изменений.
НО: я думаю что можно выставить наружу необходимые методы для парсинга виртуальных таблиц и соответственно в таком случае можно написать свой КОП (хоть путем наследия от моего)... как такой вариант?
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #151 - 18. Августа 2009 :: 05:30
Печать  
То есть реализовать схему
ODBCRecordset>ПрямойЗапрос>РегистрСведений
при этом парсинг класса ПрямойЗапрос вынести в отдельный модуль.
Идея мне нравится. Я думаю что это логичней - строить модульную структуру. Единственное за что я переживаю - что у меня не хватит опыта реализовать парсинг виртуальных таблиц, но я буду очень стараться.
  
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #152 - 18. Августа 2009 :: 05:48
Печать  
leshik писал(а) 18. Августа 2009 :: 05:30:
То есть реализовать схему
ODBCRecordset>ПрямойЗапрос>РегистрСведений
при этом парсинг класса ПрямойЗапрос вынести в отдельный модуль.
Идея мне нравится. Я думаю что это логичней - строить модульную структуру. Единственное за что я переживаю - что у меня не хватит опыта реализовать парсинг виртуальных таблиц, но я буду очень стараться.


Неееее...
Есть методы реализующие парсинг виртуальных таблиц, но они счас "приватные". Т.е. доступны только в модуле класса. Я их (а их там буквально несколько) выставлю наружу и дам им подробное описание.
Ты в свою очередь создаешь класс "КакоеТоНовоеНазвание", и делаешь его наследником от "ПрямойЗапрос".
Соответственно необходимые методы класса ты можешь переопределить в своем новом КОП и в нем ты можешь реализовать сколько хочешь виртуальных таблиц применяемых только у тебя.

Тебе просто понадобится переопределить методы
ПодготовитьТекстЗапроса()
Выполнить()
ВыполнитьЗапрос()
Остальные можно оставить без изменений, ничего особенного тебе там не понадобится.

Если такой вариант устраивает я выложу новый релиз.  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #153 - 18. Августа 2009 :: 05:51
Печать  
Цитата:
Если такой вариант устраивает я выложу новый релиз.

Устроит! С нетерпением буду ждать, а обсуждение следовательно уже продолжу в другой ветке.
  
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #154 - 18. Августа 2009 :: 09:01
Печать  
Выложена новая версия 1.03.003. Из нового:
1.03.003 (beta) от 18.08.09 г.
- Некоторые методы и атрибуты выделены в качестве публичных в целях возможности создания «расширений» в данному классу. В основном данные методы предназначены для удобного разбора виртуальных таблиц в текстах запросов. Подробнее см. раздел «Описание дополнительных методов класса».
- Добавлены новые функции Лево, Право для получения соответственно левой или правой части строки.
- Добавлены новые функции СокрЛ и СокрП для удаления пробелов соответственно с левой или правой части строки.

В общем внесены изменения по просьбам товарищей: classic и leshik. Обновление брать в топике.  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
classic
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 330
Местоположение: г. Харьков
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #155 - 18. Августа 2009 :: 15:13
Печать  
СПАСИБО!!!
Первым делом при исправлении запроса я опечатался - вместо Лево по 1с-ной привычке привычке написал Лев... Может, пока не поздно, пока народ не понаписывал кода, завязанного на функции - исправить на привычные названия?
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #156 - 18. Августа 2009 :: 17:57
Печать  
classic писал(а) 18. Августа 2009 :: 15:13:
СПАСИБО!!!
Первым делом при исправлении запроса я опечатался - вместо Лево по 1с-ной привычке привычке написал Лев... Может, пока не поздно, пока народ не понаписывал кода, завязанного на функции - исправить на привычные названия?

Да я могу и Лев и Прав добавить, мне в принципе фиолетово  Очень довольный
Просто ЛевО и ПравО более правильно, я бы счас и СРЕД исправил на ПОДСТРОКА. Вот только поздно уже. Может пускай остаются, это все таки язык запросов, а не язык 1С Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
classic
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 330
Местоположение: г. Харьков
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #157 - 19. Августа 2009 :: 08:25
Печать  
Да мне тоже не особо сложно 2 функции запомнить. Вообще, конечно, разницы особой нет.
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #158 - 19. Августа 2009 :: 08:27
Печать  
Подправил мелкий неприятный косячок, на SQL неправильно обрабатывалась функция СРЕД если она написана в любом другом регистре кроме верхнего.

Файл брать в топике. ОБЯЗАТЕЛЬНО  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #159 - 19. Августа 2009 :: 08:30
Печать  
classic писал(а) 19. Августа 2009 :: 08:25:
Да мне тоже не особо сложно 2 функции запомнить. Вообще, конечно, разницы особой нет.


Вот так и оставим значит Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #160 - 19. Августа 2009 :: 11:35
Печать  
Я как хозяин топика могу немного пооффтопить?
В общем интересный вопрос, кто как его решает, ведь он не у меня одного возник?

Собственно в чем вопрос:
Пришел клиент, попросил отчет, написали. Использовали при этом данный класс (ну и ИТЗ + Yoksel + что-то еще), и вот значит он (клиент) и говорит, мол не могу отдать свою программеру-ламеру данный отчет на "тюнинг"... не въезжает... ну мы ему что мол Yoksel, 1C++, FormEx - берите на соответствующих ресурсах и "фперет". Он говорит, да все хорошо но как быть с прямыми запросами? Он (программист) типа не шарит... документацию бы...

Конечно данный топик позволяет ему прийти сюда и взять все что он хочет, но они хотят получить ее "официально" от нас, с какой-то возможно поддержкой или незначительным "пояснением".

Вот что ему ответить?

Пы.сы при написании вопроса ни один директор, программист и исполнитель не пострадал, все персонажи вымышлены, совпадения случайны.  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
classic
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 330
Местоположение: г. Харьков
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #161 - 19. Августа 2009 :: 12:13
Печать  
Сложный вопрос. Если он "не шарит" - он хочет, чтобы ты его научил? Ну дык тройная почасовка, и поехали учиться. И вообще - что значит - не шарит в запросах? SQL - язык из одного оператора (select) - нужно только захотеть.
А насчет тюнинга сторонним программистом вообще странно. Клиент свою машину отдаст на СТО, в которой мастера его же будут спрашивать, как правильно ключ держать, с какой стороны к домкрату подходить?


А по теме: ты писал, что класс БухгалтерскиеТаблицы лишний. Т. е. его можно удалить, и упоминания о нем вычистить?
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #162 - 19. Августа 2009 :: 14:18
Печать  
classic писал(а) 19. Августа 2009 :: 12:13:
А по теме: ты писал, что класс БухгалтерскиеТаблицы лишний. Т. е. его можно удалить, и упоминания о нем вычистить?


Да можно...
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #163 - 19. Августа 2009 :: 14:28
Печать  
classic писал(а) 19. Августа 2009 :: 12:13:
Сложный вопрос. Если он "не шарит" - он хочет, чтобы ты его научил?

Нееее... учить я его точно сразу отказался. Не нравится мне быть "преподом". Да и я не уверен что уровень моей квалификации позволяет это делать.

classic писал(а) 19. Августа 2009 :: 12:13:
И вообще - что значит - не шарит в запросах? SQL - язык из одного оператора (select) - нужно только захотеть.

Для меня это тоже не вопрос, я же захотел, купил толстую большую книжку и читал пока не стало получаться и "пониматься"

classic писал(а) 19. Августа 2009 :: 12:13:
А насчет тюнинга сторонним программистом вообще странно. Клиент свою машину отдаст на СТО, в которой мастера его же будут спрашивать, как правильно ключ держать, с какой стороны к домкрату подходить?

Не совсем сторонним... время счас такое что некоторые клиенты готовы своим "доморощенным" 1Сникам отдавать то что ранее давали на аутсорс, то ли думая что так экономнее, то ли какие другие соображения. Трудно сказать. Прецеденты есть в общем.

Хотя ладно, для себя я решил: хотят получить поддержку пускай покупают класс и получат поддержку и подсказки. Сколько стоит? А хрен знает, придумаем. Если же не хотят платить деньги то велкам в данную и не только тему и вперед, учиться учиться и учиться, как завещал дедушка Ленин.  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #164 - 22. Августа 2009 :: 16:36
Печать  
Нашел неприятный баг, в режиме DBF класс не менял _ на __ в виде объекта запроса (справочник, документ, регистр).
Класс брать в топике.  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 9 10 [11] 12 13 ... 60
ОтправитьПечать