evngas.gif (2282 bytes)

Задаваемые вопросы, переписка

Рассчеты с населением за газ

evngas.vallmind.ru

www.vallmind.ru

Применяйте контекстный поиск CTRL+F интересующего вас материала !

Фрагменты переписки по сопровождению c БРГ (2):

1 2



3. Выяснилось, что формы в проектах можно редактировать только при вызове EvnGas.exe из VFP


1. Документы прочих платежей и зачётов можно вводить списком аналогично документам оплаты за газ.
2. Документы прочих платежей и зачётов можно грузить из реестров аналогично документам оплаты за газ.
3. При клонировании документов в делах можно выбирать - один документ для всех или отдельные документы для каждого участника...
4. В структуру списков документов делопроизводства можно добавить поля DOCMCODE__ C(10) - код платёжки, DOCMDATE__ T - дата платёжки,
ACTLDATE__ T - дата операции платёжки. Эти поля будут учитываться при клонировании
5. Оперативные данные делопроизводства - третья закладка оперативных данных по расчётам
6. В EvnFoxRu.chm (взять отдельно с сайта) в разделе "Средства сторонних разработчиков" описан пример подготовки запроса. Таким
образом можно городить самые извращённые запросы по заказу юзера
7. В том же CHM кратко описана технология работы с окнами разработки компонентов VFP и технология создания проектов (классы, формы, ...) с
автодистрибьюцией (по аналогии с функциями VFP)
8. Нужно проверить: редактирование форм отчётов, передача функций и пероектов в участки со справочниками, делопроизводство, данные о
расчётах, импорт реестров, ввод платёжек списком, ...


"Самая позорная из глупостей - перемудрить!" (Конфуций)

Пусть набирают реестр платёжек в чём-угодно или вытаскивают из 1С в любой таблице или из клиент-банка. Импортируем как любой другой
реестр!
???


Выкини Symantec!

Вчера опять активизировался червь. Нортон ничего сделать не смог. Снёс его, поставил Касперского. 20 файлов сразу отловил и уничтожил. С
инета постоянно ловит и блокирует страницы. Совсем другое дело!


Привет!

С Владимиром общаюсь. Загрузку переделал.

Ездил на маленькой машине. На большой 18000 пробега. Если бы съездил на ней - сразу бы пришлось в Москву на ТО рулить (через каждые 10000)

Там всё на уровне! Правда жаль в полусне воспринималось. Три дня праздников. В воскресенье народ не поместился в зал говорят. В понедельник
было гораздо свободнее по причине отмены кучи электричек. Практически были только иногородние, но и тех почти целый зал набрался. Матвиенко своих присылала в воскресенье поздравлять. Ну а остальные подробности ещё сам не выяснил - только в воскресенье узнаю.

Спиртпром объявил о намерении окончательного спаивания всей страны "народной водкой". Слыхал что творится?


Thursday, November 23, 2006, 9:24:57 AM, you wrote:

ПАД> Андрей, привет!
ПАД> Ну, я не знал, что ты в пути.
ПАД> Звонил я по работе, Лена сейчас на больничном.
ПАД> У нас события развиваются по госпошлине, Кравцов сейчас рулит.
ПАД> Ну ты с ним общаешься.

ПАД> Ну ты геройски съездил, на большой машине ехал?
ПАД> Что еще интересного? Как жизнь идет?

ПАД> Анатолий Панфилов. Phones: +07 (4832) 68-09-10, 74-64-67, Gaz. (707) 15210


ПАД> -----Original Message-----
ПАД> From: vallmindru [mailto:mail@vallmind.ru]
ПАД> Sent: Wednesday, November 22, 2006 3:55 PM
ПАД> To: Панфилов Анатолий Дмитриевич
ПАД> Subject: Re[2]: ?

ПАД> Толик, привет!

ПАД> Ты чего звонил то?
ПАД> В Вырице праздновали 112 лет. У меня по человечески со всеми в субботу
ПАД> утром на автобусе возможности поехать конечно же небыло . Потому я в
ПАД> воскресенье вечером в 22-30 поtхал на машине. В Брянске гололёд, а со
ПАД> Смоленска до Питера сплошной туман. Приехал только к беседе к 14-00 .
ПАД> В 20-00 обратно. По дороге пол часа покимарил всего пару раз за двое
ПАД> суток. Сейчас ещё руки и ноги трясутся.


Ну а они кребко там нужны?

Friday, November 17, 2006, 9:44:53 AM, you wrote:

ЛЕЕ>  Контрольные суммы по документам делопроизводства будут в отчетах приема/передачи?


Короче я переделал документы делопроизводства. Теперь каждому типу соответствует тип "в центре". Интерфейс документов могу менять немного посвободнее.
Нужно удалить закачку и импортировать прилагаемой здесь версией программы. Нужно проверить обмен документами! И вообще...


Wednesday, November 15, 2006, 12:15:03 PM, you wrote:

ЛЕЕ> Андрей, мне надо сваять еще одну форму отчета
ЛЕЕ> позадолжникам. Там мне нужен телефон. Среди существующих функций
ЛЕЕ> я подходящей ненашла. Если можно как-то вытащить телефон, то
ЛЕЕ> подскажи, либо добавь функцию.

Попробуй эту функцию. Описание есть в help

Если телефон в gas_objects, то наверное E_Locate_Property(PART_IDENT,'OWNER','gas_objects','PHONE','m.Phone')


Синтаксис:
E_Locate_Property(eKEY_VALUE, cKeyFieldName, cTableName, cScatterFieldsList, cReturnExpression, [oAccess], [nDocumentType], [eDefaultValue])

eKey_Value - значение для поиска по ключу
cKeyFieldName - имя поля в таблице по которому искать
cTableName - имя таблицы
cScatterFieldsList - перечень имён таблицы через запятую из которых нужно составить выражение для возвращаемого результата. Командой Scatter MemVar будут сброшены в локальные переменные
cReturnExpression - выражение для возвращения результата. Можно ссылаться на переменные со значениями полей, перечисленных в предыдущем параметре, типа [Alltrim(m.Code)+' '+AllTrim(m.Name)]
oAccess - внутрисистемный объект для доступа к данным. Перед вызовом отчётов программа его создаёт. В других местах нужно
сделать предварительно типа:

Set Library to EAccess Additive
Public m.__Access
m.__Access = CreateObject('E_Access')

и передать в качестве данного параметра 'm.__Access'. Но после нужно стереть за собой переменную Release __Access

nDocumentType - если выбор из DOC_HEAD, то можно указать код типа документа типа 401
eDefaultValue - какое значение вернуть в случае проблемы. По умолчанию '' (по моему)


Можно сделать так:

1. Создаёшь базу данных EXCHANGE

2. В центральной базе выполняешь скрипты:

Select a.* Into exchange.dbo.doc_head From doc_head a Join gas_objects b On a.OFO_IDENT=b.IDENT Where b.SITE='_0ZX0N5P5J'

Select c.* Into exchange.dbo.doc_item From doc_head a Join gas_objects b On a.OFO_IDENT=b.IDENT Join doc_item c On a.POINTER=c.POINTER Where b.SITE='_0ZX0N5P5J'

Select c.* Into exchange.dbo.doc_vars From doc_head a Join gas_objects b On a.OFO_IDENT=b.IDENT Join doc_vars c On a.POINTER=c.POINTER Where b.SITE='_0ZX0N5P5J'

Select c.* Into exchange.dbo.doc_expr From doc_head a Join gas_objects b On a.OFO_IDENT=b.IDENT Join doc_expr c On a.POINTER=c.POINTER Where b.SITE='_0ZX0N5P5J'

Select a.* Into exchange.dbo.gas_meters_indications From gas_meters_indications a Join gas_objects b On a.OBJECT=b.IDENT Where b.SITE='_0ZX0N5P5J'

Select a.* Into exchange.dbo.gas_disconnections From gas_disconnections a Join gas_objects b On a.OBJECT=b.IDENT Where b.SITE='_0ZX0N5P5J'

Select a.* Into exchange.dbo.balance_h From balance_h a Join gas_objects b On a.OFO_IDENT=b.IDENT Where b.SITE='_0ZX0N5P5J'

Select c.* Into exchange.dbo.balance_i From balance_h a Join gas_objects b On a.OFO_IDENT=b.IDENT Join balance_i c On a.POINTER=c.POINTER Where b.SITE='_0ZX0N5P5J'

3. Делаешь backup базы exchange и аттачишь её на клинцовском сервере

4. Копируешь эти таблицы в рабочую базу клинцов

5. Восстанавливаешь для этих таблиц индексы

6. Передаешь справочники обычным способом

'_0ZX0N5P5J' - идентификатор Клинцов


Wednesday, November 15, 2006, 8:36:39 AM, you wrote:

ААВ> Ну, так что делать? Подскажи.
ААВ> Мне сервер нужно Клинцовский сделать.

ААВ> -----Original Message-----
ААВ> From: vallmindru [mailto:mail@vallmind.ru]
ААВ> Sent: Wednesday, November 15, 2006 12:41 AM
ААВ> Subject: Re: Ошибка

ААВ> Это курсор. На диске он хранит то, что не влезло в память,
ААВ> а общий размер файла может быть 2GB. Может даже его часть в свапе
ААВ> находится

ААВ> Tuesday, November 14, 2006, 1:55:23 PM, you wrote:

ААВ>> Андрей привет.
ААВ>> Посмотри ошибку плиз. она возникает когда делаю синхронизацию на

ААВ>> участок.  Ругается на временный файл который весит 18 Мб.


RE> 1. Несмотря на то, что в локальных установках системы стоит настройка
RE> искать по первым символам, поиск выполняется по подстроке.

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

RE> 2. Необходимо расширить поле комментарий в объекте газификации.
RE> Существующего количества позиций катастрофически не хватает.

Да там 64 килобайта можно набирать

RE> 3. При вводе данных по новому владельцу в карточке владельца видны
RE> паспортные данные предыдущего владельца. Однажды этого уже было исправлено. Теперь опять старая история.

Никогда это не исправлялось вроде. Сейчас поправил (в следующем билде)


Friday, November 10, 2006, 9:57:49 AM, you wrote:

ЛЕЕ> Я не могу выбраться из ошибок по структуре базы.
ЛЕЕ> Объясни,почему структуры у нас меняются и через SETUP, и
ЛЕЕ> черезсправочники, а теперь еще и с передачей документов?

Плохо что нихт ферштейн!

С помощью SETUP изменяется статическая структура таблиц (базовая).

При передаче справочников изменяется статическая структура (базовая) и добавляются поля добавленные в таблицы справочников администратором в
центре.

При передаче документов проверяется базовая структура и поля добавленные в таблицы документов в центре.

Я предлагал вам с Владимиром добавить поле "Основание, причина, источник" и вести в нём список источников взыскания вместо поля
"Текст". Владимир согласился. В структуру agreems добавлено поле PPWFOUNDA_ в центральной базе. Можно просто добавить это поле типа
"Список" со ссылкой на новый список в тестовой и локальной базе


А когда принимали? Там же были проблемы с GAS_OBJECT . Спроси уn Алёничева , они вроде repair делали чтобы принять Бежицу и Трубчевск

Tuesday, November 7, 2006, 3:29:39 PM, you wrote:

ЛЕЕ>  
ЛЕЕ> Пересылаю тебе записи по оборудованию, которые содержались 
ЛЕЕ> в файле GAS_EQUIPMENT.DBF в датаграмме за сентябрь. После закачки
ЛЕЕ> данных в центральной базе по данному объекту теперь нет ни одной
ЛЕЕ> записи по оборудованию. В локальной базе они есть. Что такого
ЛЕЕ> было в той датаграмме, в результате чего пропали записи по
ЛЕЕ> оборудованию.


В датаграмме в поле gas_obj_properties.TENANTSQNT есть строка со значением 2006. Пусть исправят и пришлют заново датаграмму (Трубчевск)


Wednesday, November 1, 2006, 3:46:47 PM, you wrote:

ААВ> Ошибки при приеме Трубчевской датаграммы.


Принял пару раз датаграмму. Как и следовало ожидать - без проблем.

Думаю - проблема с базой. Потому предлагаю:

1. Выполнить для всех GAS_OBJ* процедуру DBCC CHECKTABLE('gas_obj...') поочерёдно и прямо сейчас
2. При обнаружении таблиц с ошибками нужно будет вырубить всех ночью , открыть базу в однопользовательском режиме и прогнать DBCC CHECKTABLE ('gas_obj...',REPAIR_FAST) для этой таблицы


Wednesday, November 1, 2006, 10:37:24 AM, you wrote:

ААВ> Андрей привет.
ААВ>  
ААВ> Посмотри ошибку.
ААВ> При приеме на любой машине выдает ошибки на двух Бежицах и Трубчевске.
ААВ> Датаграмму пересылаю Трубчевскую.


Конечно переформировать сальдо, я считаю

Tuesday, October 31, 2006, 10:38:35 AM, you wrote:

ЛЕЕ> Андрей, я что-то не могу определиться. Прошу совета.
ЛЕЕ> Токаответь срочно. Что будет лучше – править субсидии в
ЛЕЕ> последнемпромежуточном сальдо или просто после изменения схемы
ЛЕЕ> проводок переформироватьпоследнее промежуточное сальдо?


Привет!

Сегодня попробую успеть. Ту неделю с червём воевал, а потом свет с пятницы практически до сегодня отрубили. Ездил лично в дежурку к диспетчерам , но там всех только поубивать остаётся. Коммунальщики вообще оборзели. Тянул пол дня воздушку с соседней улицы на соплях, а потом и у них напряжение поплыло. Так-что полный завал дел пытаюсь сейчас разгрести

Monday, October 30, 2006, 9:30:18 AM, you wrote:

ААВ> Андрей привези документы на оплату


Должны передаться вместе со справочниками записи из COMPANY ссылок на которые нет из gas_obj_properties и длина кода меньше пяти.

Там - новые билды. Ошибку в проводнике я исправил, но такая группировка абсолютно бесполезна. Участник у тебя показывается в правой таблице, а в заголовке он вообще не указывается кроме платёжек.

По проводнику нужно додумывать. Что придумаешь конкретное - говори.

Кроме того я сделал средство подготовки запросов программистом. Нужно придумать пару для делопроизводства. То есть: какие данные запросить указать у
пользователя (будут собраны в одном окошке) и что для них выбрать и показать пользователю. Я напишу примеры, а дальше Владимир может делать кучу специфических запросов которые им понадобятся


Wednesday, October 25, 2006, 9:48:32 AM, you wrote:

ЛЕЕ> Андрей, а как передадутся на участки такие записи из
ЛЕЕ> COMPANYкак ССП и МИФНСРФ N3 по Брянской области ?

ЛЕЕ> Пока они в локальную базу у меня не передались.


Конечно можно

Monday, October 23, 2006, 3:49:20 PM, you wrote:

ЛЕЕ> Можно ли на 268 сразу ставить 278? Или обязательно 274 тожеставить?


Ты же справочники копировала в локальную. Алгоритм наверное поменялся.
До этого может с алгоритмом экспериментировала в локальной

Monday, October 23, 2006, 12:02:43 PM, you wrote:

ЛЕЕ> Это когда работаю с Данными для группы абонентов. Ввела
ЛЕЕ> критерии выборки. Потом для кнопки выбрать появляется контекстное
ЛЕЕ> меню, в котором второй пункт "Выбрать и восстановить прошлый
ЛЕЕ> порядок". Рука дрогнула, нажала этот пункт, выскочила ошибка.

ЛЕЕ> А еще побилась. На локальной базе проверяла расчет,
ЛЕЕ> пересчитала октябрь. Так вот число счетов прежнее, а сумма
ЛЕЕ> увеличилась на 110 тысяч! Отдельно счета смотрю. Вроде все верно.
ЛЕЕ> По отключенным проверяю, тоже вроде так же как раньше. Может ты
ЛЕЕ> что-то подскажешь?


contact@Vallmind.ru отрубили как и vallmind.com

Не знаю что с этими козлами делать. Заплатил им деньги за очередной год, они не продлили и ни на одно на десятки писем не ответили.

Намериваюсь сделать большую антирекламу поставщику хостинга netdrive.ru


Некоторое развитие средств разработки:

1. В построителе выражений, вызываемом из документа или фрагмента (ситуации) для редактирования выражения позиции, если тип выражения - процедура/функция (а не выражение) то теперь есть кнопка с лисой. С помощью данной кнопки процедура может быть загружена в окно редактора FoxPro со всеми вытекающими последствиями (подсветка правильного синтаксиса синим, вызов построителя выражений VFP правой кнопкой и т.д.)

2. В большинстве отчётов, если работает пользователь с правами администратора, под спиской форм есть кнопка для редактирования формы. Если её щёлкнуть - программа начнёт отрабатывать как будто щёлкнули "Просмотр". Но перед показом окна с отчётом форма отчёта будет загружена в редактор отчётов VFP, где её можно поправить и сохранить. Редактирование формы в среде готовности к печати отчёта несравнимо более эффективно! Во первых. Можно через построитель выражений VFP ссылаться на реальные алиасы, поля и переменные. Во вторых. Правой кнопкой можно вызвать предварительный просмотр работы формы с внесёнными изменениями. В случае возникновения ошибки VFP сразу вызовет построитель выражений для поля или переменной, в выражении которых возникла проблема.
 


Блин! Ну я же говорил всем проверить наличие промежуточного сальдо в фокинке!
Не ужели легче было притащить базу ко мне чем посмотреть, что у них сальдо на 1-е сентября! Или мне ночью делать нефиг считается?

Wednesday, October 11, 2006, 4:12:37 PM, you wrote:

Андрей, а что с проблемой по субсидиям? Ты смотрел
базу?Пользователи все время спрашивают.


Версия непричём - однозначно!
В balances есть поле с CREATED - это дата создания сальдо. Перед принятием решения программа смотрит - нет ли в базе документов до даты самого сальдо (до начала месяца), которые были изменены позже даты создания сальдо. Если таковые имеются - сальдо считается неактуальным и программа игнорирует его.
Правили документы до сентябрьские в тестовой базе? Если уверены что нет и сальдо актуально - поставьте для него в balances.CREATED текущую дату и пробуйте

Friday, October 6, 2006, 11:25:33 AM, you wrote:

Прописали сальдо, в программе оно видно, но отчет все равно
не формируется. Та же ошибка. Какие будут еще предложения? Может
на старой версии попробовать?

Можно попробовать добавить запись о сальдо скопированном в balances
таблицу ровно так как эта запись выглядит в таблице balances рабочей
базы

Friday, October 6, 2006, 10:44:55 AM, you wrote:

Андрей, срочно выручай. Перед нами срочно поставили задачу сделать сравнение отчетов, как поменяются цифры по льготам на новых нормах потребления. Для этого мы создали новую тестовую базу, закачали в нее все объекты, документы и сальдо не брали.
Потом провели расчет за сентябрь. Теперь я пытаюсь создать книгу отчета по расчетам - выходит вот такая ошибка (см. док.) (File too large) Указанный в ошибке файл дорастает до 2 ГБ и программа на этом затыкается. Мы жестко скопировали из рабочей базы промежуточное сальдо на 1 сентября. Но это тоже не помогло. Во-первых, программа это сальдо не видит. В списке сальдо записи по сальдо нет. Что делать? Может быть попробовать на старой версии?


Думаю, что ничего страшного если структуры поменяются.
 

Thursday, September 28, 2006, 9:15:53 AM, you wrote:

Андрей, просвети меня по такому вопросу. В ЦБ у нас новаяверсия, на участках старая. Я для Новозыбкова добавляла новые улицы всправочник. Теперь надо отсылать. Но при приеме у них начнут менятьсяструктуры. Это ничего? Или пока не стоит им отправлять справочники? Версиюсобираемся отправлять на участки в начале октября.

 


Интервал позиций в лицевом счёте нужно указывать минуя лидирущие нули.
Типа 3-10. Всё, что не найдено скидывается в файл рядом с исходным
реестром

Monday, September 25, 2006, 2:21:14 PM, you wrote:

ЛЕЕ> Документы оплаты из реестра не сформировались.
ЛЕЕ> Никакихошибок, но и никаких документов.
 


Поле в таблицу было добавлено не сегодня. Таблицы промежуточного
сальдо не удалялись, потому что раньше при создании таблиц владельцем
был текущий пользователь. Удали вручную таблицы сальдо с владельцем не
DBO и создавай сальдо

Как получить базу фокинки?

Friday, September 22, 2006, 2:15:37 PM, you wrote:

ЛЕЕ> Отчет по расчетам нормальный. А вот в книге квитанций
ЛЕЕ> задолженность выходит неправильная. В данных о расчетах и в
ЛЕЕ> отдельной квитанции правильная, а  в книге меньше. В программе
ЛЕЕ> индексирование провела как ты сказал. А через аналайзер - Кравцов
ЛЕЕ> утверждает, что на POINTER индекс создан.

ЛЕЕ> С уважением, Левитина Елена Ефимовна
ЛЕЕ> инженер-программист ООО "Брянскрегионгаз"
ЛЕЕ> (4832) 68-09-52
ЛЕЕ> -----Original Message-----
ЛЕЕ> From: Vallmind [mailto:Contact@vallmind.com]
ЛЕЕ> Sent: Friday, September 22, 2006 11:58 AM
ЛЕЕ> To: Левитина Елена Ефимовна
ЛЕЕ> Subject: Builds 549, 268

ЛЕЕ> Список балансовых счетов при формировании отчётов восстанови

ЛЕЕ> Пробуйте импорт реестров из банка

ЛЕЕ> Теперь можно на тестовой базе прогнать восстановление индексов на
ЛЕЕ> заголовках первичных документах и заголовках сальдо. Ошибку с POINTER
ЛЕЕ> - игнорируй. Потом создай индексы на POINTER из Query analizer

ЛЕЕ> Расчёты по 76-98 пробуй в \Отчёты\Отчёты Events


ЛЕЕ> Ну вроде все работает (кроме той ошибки, о которой
ЛЕЕ> писалавчера). Конечно, все это довольно сложно. В смысле
ЛЕЕ> оформления. Больше всегоменя волнует вопрос о введении первичных
ЛЕЕ> документов и проверки присутствия их вделах. Тут такое дело –
ЛЕЕ> запутаться можно. Вводить будут много платежек иприхода от
ЛЕЕ> судебных исполнителей. А добавят ли они эти документы
ЛЕЕ> всоответствующие дела или могут и забыть. Тут нужен какой-то

Да и не нужно их в дела добавлять. Если платёжка от приставов генерит
ряд документов типа служебок - то для неё заводится новое дело при
необходимости.
Вся остальная работа после внесения в дела решений суда осуществляется
индивидуально по каждому абоненту через оперативные данные
делопроизводства. Естественно сначала должны быть отчёты по дебиторам


ЛЕЕ> инструмент проверкичто ли. Короче, я, зная программу, делаю
ЛЕЕ> большое напряжение, чтобы все оформитькорректно и правильно. И
ЛЕЕ> это по одному делу. А те, кто просто всей кухни непредставляют,
ЛЕЕ> будут лепить кто на что горазд.
 


Погибли поля после прогона старого Setup.app

Создавай новые примеры

Wednesday, September 13, 2006, 10:12:57 AM, you wrote:

ЛЕЕ> Попробовала разные варианты выборки существующих
ЛЕЕ> документовделопроизводства через пункт меню Данные/Выбрать
ЛЕЕ> данные/Документыделопроизводства.

ЛЕЕ> Ни по самим документам, ни по ссылкам ничего не выбирается. Адокументы –то есть.
 


Глянь дебиторов, квитанции и продолжай с госпошлиной разбираться.

Да, теперь можно настраивать и проводить зачёты для потерянных
OFO_IDENT. Можно настроить операцию для прочих платежей в центре
"зачёт задолженности" с позициями "списание дебиторской задолженности"
и "списание кредиторской задолженности". Для первой проводка 90-10 -
62-98 , а для второй - наоборот. Если такие документы создавать
начиная с сентябры - зависшие долги должны гаситься

Monday, September 11, 2006, 9:45:58 AM, you wrote:

ЛЕЕ> Отчет сходится по всем колонкам копейка в копейку (с 535
ЛЕЕ> версией). Что еще проверять на последней версии?


ЛЕЕ> 1. На версии от 7 августа ты не применял еще нового
ЛЕЕ> перекрытия?У меня 522 версия на тестовой базе не запускается.

менял. А что, посвежее нет версии. И почему не запускается? Что
говорит?
Нужно обязательно сравнить поведение 30000985 на старой версии и при
новом алгоритме.

ЛЕЕ> 2. Ты хочешь, чтобы я одна приняла решение о внедрении
ЛЕЕ> нарабочей базе нового подхода к документам? И одна потом за это
ЛЕЕ> отвечала?

изменения коснутся только неправильных или пустых OFO_IDENT и текущих
владельцах. Сейчас они не перекрываются, а при новом алгоритме -
перекроются. Сейчас вообще не перекрываются документы, если у них не
совпадают OFO_IDENT. Мне нужно только определиться - для документов с 1
сентября или с 1 августа это делать? Я так понимаю, что для документов
с 1 сентября.

ЛЕЕ> 3. Как мне проверять правильность работы, если там, где
ЛЕЕ> несходятся суммы, ты говоришь, что либо старый PART_IDENT,
ЛЕЕ> либостарый OFO_IDENT? А у нассплошь и рядом вся база состоит из
ЛЕЕ> старых и новых идентов. Почти в каждойкарточке, два владельца, аљ
ЛЕЕ> некоторых и по пять

Не либо-либо, а И НЕПРАВИЛЬНЫЙ OFO_IDENT И СТАРЫЙ ВЛАДЕЛЕЦ
ОДНОВРЕМЕННО! Все эти ситуации нужно вычислить и провести зачёты
текущим месяцем их долгов.

В любом случае я сейчас введу ограничение нового алгоритма если оба
документа старше первого сентября и на новой версии нужно городить
сентябрьские документы и сними экспериментировать. Но перед этим
проверить - всё ли осталось до первого сентября как на старых версиях


В хелпе есть пункт "Суды и госпошлина". Его нужно почитать перед
продолжением госпошлинских настроек.

Нужно посмотреть отчёт о расчётах и отдельных абонентов - не уползли
ли цифры!!! Раньше перекрытие было строго по объектам (OFO_IDENT).
Сейчас перекрывается и по объектам и по совпадению владельцев. Потому
документы со ссылками OFO_IDENT на погибшие объекты по идее должны
начать перекрываться по PART_IDENT. Короче нужно посмотреть все
сложные ситуации с несколькими владельцами и (если есть) с несколькими
объектами у одного владельца, и проверить правильность перекрытия если
"оплату за газ" проводим документом "Прочие платежи и зачёты" как в
доке. Если в документе нет ссылки OFO_IDENT вообще на объект (пустое
поле), то перед перекрытием программа попытается найти ссылку
OFO_IDENT этого владельца в других документах и использовать её.

Короче, прежде всего нужно проверить правильно ли передаваться
остались долги старых владельцев новым, а потом - передаются ли они в случае
неправильных или отсутствующих OFO_IDENT по PART_IDENT ?

Ошибка при добавлении записи о реквизитах с новым владельцем должна
исчезнуть.


При генерации ключей с какой-то даты в них появляется знак открытой
скобки ( . После этого в отдельных запросах может появиться ошибка
типа "Subquery syntax error, missing ')' " .

Высылаю новую EFoxSQL.fll , где эта ошибка исправлена.
Нужно потестировать денёк-другой и постепенно всем раздать
 


Что там за делегация приезжала? Чего без предупреждения?

Мазду 5 смотрел?

***

Вчера в Москве в салоне смотрел Mazda5 . Крнечно поменьше шарана, но
очень интересная. Со всеми прибамбасами за $27000 . Кредит какой-то
предлагают с выплатой менее $400 в месяц. Двигатель 1.8 85лошадок. До
сотни за 11 секунд, максимальная - 182км/час.

Купил диски для своей B2500 назиму. Первое ТО обошлось чуть больше 4000


Просто Excel добавляет кучу мусора скрытого, об который Fox
спотыкается. Все процедуры/функции оформляй "функциями VFP"

Thursday, August 3, 2006, 10:22:01 AM, you wrote:

КВГ>  
КВГ> Привет Андрей.
КВГ> Отправляю тебе выборку из 1С по госпошлине для разработки
КВГ> функции закачки (разовоя операция). В архиве 3 таблицы по годам
КВГ> 2004-2006 и XLS таблица с полями. В таблице на каждый документ по
КВГ> судам отдельная строка, те, если оплата долга и госпошлины
КВГ> производилась за 3 раза, то будет 3 строки в таблице.

КВГ> По поводу учителей.
КВГ> Я перенес функцию из XLS шаблона в справочник VFP-функций,
КВГ> поставил вместо нее вызов функции и все заработало. Похоже размер
КВГ> текста влияет на ошибку или еще что...
 


Wednesday, July 26, 2006, 11:41:22 AM, you wrote:

ЛЕЕ> А что делать с неперекрывающимися документами? Абонентам, у
ЛЕЕ> которых на самом деле долга нет, высылают уведомление и подают в
ЛЕЕ> суд, за то, что долг не погашен в течение 3-х месяцев. Как
ЛЕЕ> вычищать всю эту грязь? Пусть немного, но есть документы в
ЛЕЕ> BALANCEH, DOC_HEAD, BALANCEH_..., которые привязаны либо к
ЛЕЕ> несуществующим владельцам, либо к несуществующим объектам.

Нужно запросами их повыбрать. Типа

Select Distinct b.* From doc_head a Join company b On
a.PART_IDENT=b.IDENT Where not Exists(Select * From gas_objects o
Where a.OFO_IDENT=o.IDENT) Union Select Distinct b.* From balanceh a Join company b On
a.PART_IDENT=b.IDENT Where not Exists(Select * From gas_objects o
Where a.OFO_IDENT=o.IDENT)

Это - владельцы которых нужно корректировать

Select Distinct b.* From doc_head a Join gas_objects b On
a.OFO_IDENT=b.IDENT Where not Exists(Select * From gas_obj_properties o
Where a.PART_IDENT=o.OWNER) Union Select Distinct b.* From balanceh a
Join gas_objects b On
a.OFO_IDENT=b.IDENT Where not Exists(Select * From gas_obj_properties o
Where a.PART_IDENT=o.OWNER)

Это - объекты, для которых есть документы со ссылками на владельцев,
которых у объекта никогда небыло

ЛЕЕ> Хорошо, будут документ, который будет корректировать
ЛЕЕ> документы разных владельцев. А что делать, когда в документах все
ЛЕЕ> ОК, а вот в промежуточных сальдо болтается для данного владельца
ЛЕЕ> грязь?

То есть промежуточное сальдо не соответствует данным по документам?
Как так может быть? Если это нетак, то взаимозачёт должен всё
исправить

ЛЕЕ> С уважением, Левитина Елена Ефимовна
ЛЕЕ> инженер-программист ООО "Брянскрегионгаз"
ЛЕЕ> (4832) 68-09-52

ЛЕЕ> -----Original Message-----
ЛЕЕ> From: Vallmind [mailto:Contact@vallmind.com]
ЛЕЕ> Sent: Wednesday, July 26, 2006 11:31 AM
ЛЕЕ> To: Левитина Елена Ефимовна
ЛЕЕ> Subject: Re[2]: Правка промежуточного сальдо.

ЛЕЕ> OFO_IDENT в старых документах править нельзя!!! Поплывут старые
ЛЕЕ> периоды!!!

ЛЕЕ> Я понимаю, что проблема в том, что в документ коррекции можно указать
ЛЕЕ> только текущего владельца. Потому - я сейчас делаю ещё два документа
ЛЕЕ> "Прочие платежи" и "Прочие платежи в центре" для госпошлины. Там не
ЛЕЕ> будет привязки к объектам по OFO_IDENT, Но владелец выбирается любой.
ЛЕЕ> Можно для них настроить операции "Взаимозачёт по владельцам" и там
ЛЕЕ> можно списывать суммы с разных конкретных владельцев даже в одном
ЛЕЕ> документе, т.е. одним документом скорректировать всех.

ЛЕЕ> OFO_IDENT вступает в силу при перекрытии только если не совпадают
ЛЕЕ> владельцы! Потому - не трогай его! Если где правила - нужно бы
ЛЕЕ> вернуть, Но наверное это не возможно. Так что боюсь я очень за цифры в
ЛЕЕ> прошлых периодах! Ничего в старых документых и сальдо, даже
ЛЕЕ> промежуточном, править нельзя! Именно из-за этого большими усилиями
ЛЕЕ> мне пришлось ликвидировать процедуру передачи задолженностей новым
ЛЕЕ> владельцам. Я думал тебе-то это объяснять не придётся.


ЛЕЕ> Wednesday, July 26, 2006, 11:05:03 AM, you wrote:

ЛЕЕ>> Во-первых, внесение коррекции на "текущий" OFO_IDENT не
ЛЕЕ>> перекроет документы добавленного владельца, которые привязаны к
ЛЕЕ>> другому OFO_IDENT. Соответственно эти документы в отчете по
ЛЕЕ>> задолжникам выходят как непогашенный долг. Мне приходится ручками
ЛЕЕ>> править OFO_IDENT.

ЛЕЕ>> Во-вторых, ты же знаешь, что когда-то было масса задвоенных
ЛЕЕ>> карточек. Я рассылала процедуру их удаления. Эта процедура
ЛЕЕ>> перепривязывала документы, но про промежуточное сальдо я к
ЛЕЕ>> сожалению тогда не думала. Т.е. в сальдо еще попадаются записи
ЛЕЕ>> ссылающиеся на несуществующие объекты.

ЛЕЕ>> В-третьих, как они удаляют карточки я не знаю.

ЛЕЕ>> В-четвертых, сейчас вроде бы удалить или заменить
ЛЕЕ>> владельца, так чтобы старый вылетел из карточки, возможности нет.
ЛЕЕ>> А раньше была.

ЛЕЕ>> С уважением, Левитина Елена Ефимовна
ЛЕЕ>> инженер-программист ООО "Брянскрегионгаз"
ЛЕЕ>> (4832) 68-09-52
ЛЕЕ>> -----Original Message-----
ЛЕЕ>> From: Vallmind [mailto:Contact@vallmind.com]
ЛЕЕ>> Sent: Wednesday, July 26, 2006 10:52 AM
ЛЕЕ>> To: Левитина Елена Ефимовна
ЛЕЕ>> Subject: Re: Правка промежуточного сальдо.

ЛЕЕ>> Ну прежде всего нужно выясникь как создают такие ситуации и
ЛЕЕ>> заблокировать это. Естественно при наличии разных владельцев в
ЛЕЕ>> документах для перекрытия должны совпадать OFO_IDENT. Так что такие
ЛЕЕ>> вопросы решаются только взаимозачётами, т.е. долги по владельцам после
ЛЕЕ>> добавления их в лицевые счета нужно списывать документами коррекции. И
ЛЕЕ>> где лицевые счета, на которые ссылаются старые документы с другим
ЛЕЕ>> OFO_IDENT? Они что смогли их удалить?

ЛЕЕ>> Wednesday, July 26, 2006, 10:07:05 AM, you wrote:

ЛЕЕ>>> Андрей, у меня вопрос такой. Частеньков работе выясняется,
ЛЕЕ>>> что в какой-либо карточке не внесены ВСЕ владельцы с кодомданного
ЛЕЕ>>> объекта. Например, для объекта 111000 указаны две записи с
ЛЕЕ>>> разными владельцами,но есть еще третий владелец с кодом 111000,
ЛЕЕ>>> на котором висят документы, а вобъекте он не указан. Я заставляю
ЛЕЕ>>> таких владельцев привязывать (вставлять) ккарточке. Документы
ЛЕЕ>>> этого владельца «переходятЃ к текущемувладельцу. А что меняется
ЛЕЕ>>> при этом в промежуточном сальдо? Я подозреваю, чтоничего. Ведь
ЛЕЕ>>> зачастую для таких «потерянныхЃ владельцев документыимеют
ЛЕЕ>>> совершенно другой OFO_IDENT. Причем,для них есть записи и в
ЛЕЕ>>> промежуточном сальдо с таким же OFO_IDENT. Документыне
ЛЕЕ>>> перекрываются, в отчетах по дебиторам выходят долги со сроком
ЛЕЕ>>> давности по 25месяцев. Соответственно и не стыкуются сальдо
ЛЕЕ>>> месячных отчетов, потому какфактически из ниоткуда возникают
ЛЕЕ>>> суммы.

ЛЕЕ>>> С одной стороны такую грязь надо вычищать, и я это
ЛЕЕ>>> делаюкаждый месяц ручками по двум-трем номерам, о которых мне
ЛЕЕ>>> сообщают контролеры. Сдругой стороны возможность существования и
ЛЕЕ>>> возникновения непривязанныхвладельцев остается.

ЛЕЕ>>> љљљљљљљљљљљ Если невозможно это автоматизировать, то
ЛЕЕ>>> дайхотя бы рекомендации-алгоритм отработки таких ситуаций. Потому
ЛЕЕ>>> что боюсь, что яне все нюансы учитываю.


Если ничего не получается - делайте как в Сургуте. Настроили egasterm
на DBF, приняли обновления и перенесли из DBF в SQL


Thursday, July 20, 2006, 10:38:42 AM, you wrote:

ААВ> Андрей привет.
ААВ> 1. Места придостаточно.
ААВ> 2. Таблицы делал чистыми с прогоном setup.
ААВ> 3. Если не удалять из MAPS и SHARSETS ничго, то выдает
ААВ> ошибку про уникальный ключ в NET_APP и NET_STATIONS.
ААВ> 4. Делали через SQL новый источник данных на своем сервере - ничего не закачивается.

ААВ> Размер самой большой таблицы (DOC_ITEM) в синхронизации -
ААВ> 1,8 Gb. Это на самом большом районе(Клинцы)

ААВ> -----Original Message-----
ААВ> From: Vallmind [mailto:Contact@vallmind.com]
ААВ> Sent: Thursday, July 20, 2006 10:28 AM
ААВ> To: Алёничев Андрей Владимирович; Панфилов Анатолий Дмитриевич
ААВ> Subject: Re: вопрос

ААВ> Попробуй. Там места на системном диске ихнего компьютера достаточно?

ААВ> Если делаешь синхронизацию поверх ихних баз, то может
ААВ> сделать копию, удалить все таблицы рабочие из базы, прогнать
ААВ> setup и потом попробовать принять синхронизацию. Только не удали
ААВ> из MAPS и SHARSETS ничго! Только рабочие таблицы (GAS_NET) на их
ААВ> компьютере!


ААВ> Wednesday, July 19, 2006, 4:53:42 PM, you wrote:

ААВ>> Так что делать, заново принять


Да БРГ-шный расчёт мы не будем менять никак, если тебе на это когда не
укажут. Я только про настройки для них говорю. Товарищ Артём (сын
генерального) не очень то доходчиво излагает, потому я не уверен, что
мы друг-друга понимам. Короче сделаю как я понял как они хотят. А
дальше пускай сами разбираются

Thursday, June 22, 2006, 1:44:13 PM, you wrote:

ЛЕЕ> По-моему, этот товарищ теперь понял, что мы говорим прежде всего об объемах.
ЛЕЕ> Я бы очень не хотела трогать наш алгоритм начислений.
ЛЕЕ> По-моему, он абсолютно верен даже в физическом понимании - что
ЛЕЕ> такое льгота. Льгота - это деньги, но не объем. У них происходит
ЛЕЕ> начисление 50% на весь объем - это финансируют федералы. Затем
ЛЕЕ> округ, желая поддержать своих льготников, гасит им оставшиеся
ЛЕЕ> после льготной скидки деньги. Это самая настоящая субсидия. Мы же
ЛЕЕ> своих учителей не стали вклинивать в расчет. Я так вижу эту
ЛЕЕ> картину. Создавать документ субсидии с суммой=начисление-льгота.
ЛЕЕ> Ну там будет немного посложнее. Если мы будем подделывать расчет
ЛЕЕ> под них, федеральные законы окажутся в одном месте.


Ну а если исходную форму попробовать, которая в EXE ? Если не подходит
- только создавать заново вариант формы. Если в архивах где остались -
можно попродовать подключить

Wednesday, June 21, 2006, 2:13:46 PM, you wrote:

ЛЕЕ> Подскажи, пожалуйста. Нам по одному абоненту за июль
ЛЕЕ> 2004года нужна квитанция именно в той форме, какой она была
ЛЕЕ> тогда. Сейчас я этихформ не имею. Откуда их можно (может быть)
ЛЕЕ> вытащить. Идут дрязги сантимонопольным комитетом.


ЛЕЕ> И как с помощью глобальных
ЛЕЕ> функций я могу вставлять данные об отключениях?

Дата "с" отключения
E_Locate_Property(OFO_IDENT,'OBJECT','gas_disconnections','FROM_DATE','m.From_Date')

Дата "по" отключения
E_Locate_Property(OFO_IDENT,'OBJECT','gas_disconnections','TO_DATE','m.To_Date')

Дней отключено
E_Locate_Property(OFO_IDENT,'OBJECT','gas_disconnections','FROM_DATE,TO_DATE','TTOD(m.To_Date)-TTOD(m.From_Date)')

Причина отключения
E_Locate_Property(E_Locate_Property(OFO_IDENT,'OBJECT','gas_disconnections','REASON','m.Reason'),'IDENT','gas_disconnection_reasons','CODE,NAME','Alltrim(m.Code)+[==]+AllTrim(m.Name)')

Сделай контекстный поиск на http://evngas.vallmind.ru/EvnGasQ1.htm для
описания этой функции


Monday, June 19, 2006, 10:59:00 AM, you wrote:

ЛЕЕ> 1. Квитанции по улице выбирает. Но теперь последний
ЛЕЕ> критерий выборки изменился. Раньше был Номер извещения, а теперь
ЛЕЕ> Адрес в квитанции. Так вот критерий Адрес в квитанции не нужон
ЛЕЕ> ваще. А вот Номер извещения - очень нужон.

Просто я изменил фильтр с таблицы владельцев на таблицу объектов.
Сделать фильтр и на то и на другое быстро не могу.

ЛЕЕ> 2. Как я и подозревала, теперь не сохраняются нулевые
ЛЕЕ> счета. Отрицательные не сохраняются. Но и просто нулевые тоже.

Я просто вернул всё как было раньше. Нулевые счета сохраняются только
при условии что есть ненулевые позиции в документе. Напимер когда всё
начисление съела льгота


Всем раздать новую efoxsql.fll

Выборка квитанций

Несохранение нулевых счетов

При формировании дебиторки из данных о расчётах с группой (расширенный
поиск объектов) теперь есть флажёк "Быстрый отчёт". По умолчанию он
включён. Если его выключить - будет задействована редактируемая форма
отчёта, которая теперь есть в списке форм отчётов. В ней можно
использовать теже функции, что и в отчёте "Суммы". Только в качестве
первого параметра нужно передавать не поле IDENT, а поле OFO_IDENT !

Фактически можно вам добавить нужные поля в gas_obj_properties и
задействуюя функции EGAS_OBJ_PROP_PROPERTY и E_LOCATE_PROPERTY
построить такую форму (дебиторка по судам как в заявке 327).
Единственно, что в ней автоматически не будет сортировки и группировки
по количеству месяцев задолженности. Но там есть столбец - иесяцев
задолженности. Юзер может потом по нему отсортировать и подбить итоги.

С другой стороны можно было бы сделать подсистему "суды". Более
эффективно данные по судам нужно размещать не как дополнительные поля
таблицы GAS_OBJ_PROPERTIES а как отдельную таблицу по следующим очень
везким причинам:

1. При добавлении в GAS_OBJ_PROPERTIES кучи полей по судам возникнет
сильная избыточность и увеличится резко размер таблицы
2. По одному абоненту может быть несколько исков и несколько строк с
данными

Но это - разработка нового компонента

Решайте кто этим займётся и в каком виде делать
 


Tuesday, June 6, 2006, 10:10:24 AM, you wrote:

ЛЕЕ> Андрей, привет! Напоминаю о заявке 327, которая
ЛЕЕ> касаетсяновых полей по судебным искам и соответственно новой
ЛЕЕ> формы отчета по дебиторам.

ЛЕЕ> Теперь о сортировке квитанций. Будем дальше развивать этувозможность?

ЛЕЕ> 1. Если я ввожу для одного участка газификации с
ЛЕЕ> помощьюисключений два разных условия сортировки, это не работает.
ЛЕЕ> Так должно быть? Дляодного участка только один порядок
ЛЕЕ> сортировки? Это я уточняю.

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

ЛЕЕ> 2. Теперь о группировке. Как-то непонятно она работает.
ЛЕЕ> Напиши,для чего тобой введена группировка, как она должна
ЛЕЕ> работать. Потому как дляучастка отсортированного по нас.пунктам,
ЛЕЕ> если я ввожу группировку по типужилья, то выходит непонятно что.

Ну естественно, группировка должна совпадать с самым верхним
исключением. Новая группа начинается при смене значения её реквизита.
Это главное правило группировки в любом отчёте - данные должны быть
отсортированы по признаку группировки, а потом уже и по дополнительным
признакам
 


Tuesday, May 23, 2006, 6:23:13 PM, you wrote:

КВГ> Привет, Андрей.
КВГ>  
КВГ> Вопрос: в отчете по объемам даты с по есть? Те которые вводятся при задании периода.
КВГ>  
КВГ> С уважением,
КВГ> Кравцов Владимир Геннадьевич
КВГ>  


Обычно m.From_Date и m.To_Date

Но могут быть и m._From_Date и m._To_Date

Уточнить можно поискав в поле отчёта где они выводятся
 


Обязательно использовать новую efoxsql.fll

1. Сортировка квитанций. Включить "Сортировать по схеме" при
формировании книги
2. Сутки при сравнении MODIFIED при переначислении
3. Отдавать данные билды только после месяца тестирования
 


Попробуй с этой fll

Если не поможет и работаешь только с SQL, то просто получи handle коннекта

m.Handle = E_GetConnect(E_GetTableSource('gas_objects'))

И используй функции VFP для работы с SQL:

= SQLEXEC(m.Handle,[Select ...






--
Best regards,
Vallmind mailto:Contact@vallmind.com

From: Кравцов Владимир Геннадиевич
Sent: Wednesday, May 24, 2006 1:38 PM
To: Панфилов Анатолий Дмитриевич
Subject: Проблема с VFP функциями (для Евсикова)

Появилась следующая проблема
Вот текст моей функции для предварительной выборки объемов по нас. пунктам и видам
оборудования.


FUNCTION EUDF_vkobem
parameters m.From_Date,m.To_Date
m._alias = alias()
m.From_Date = Left(TToc(m.From_Date,1),8)+ ' ' + substr(TToc(m.From_Date,1),9,2) +
":"+substr(TToc(m.From_Date,1),11,2) + ":"+substr(TToc(m.From_Date,1),13,2)
m.To_Date = Left(TToc(m.To_Date,1),8)+ ' ' + substr(TToc(m.To_Date,1),9,2) +
":"+substr(TToc(m.To_Date,1),11,2) + ":"+substr(TToc(m.To_Date,1),13,2)

text to q_text TextMerge NoShow
select o.site, o.city, o.village, o.ident, o.hot_water, iif(nvl(e1.cnt,0)>0,1,0) AS Pl,
iif(nvl(e2.cnt,0)>0,1,0) as Kl, iif(nvl(e3.cnt,0)>0,1,0) as Vn, iif(nvl(e4.cnt,0)>0,1,0) as Kt
, SUM(i.sum) as v_meter from gas_objects o JOIN doc_head h ON o.ident = h.ofo_ident join
doc_item i ON i.pointer = h.pointer left join (select COUNT(*) as cnt, ident from
GAS_OBJ_EQUIPMENT where EQUIPMENT = '_0ZP0YP8T6' and to_date >='<<m.To_Date>>' group by ident)
as e1 on e1.ident = o.ident left join (select COUNT(*) as cnt, ident from GAS_OBJ_EQUIPMENT
where EQUIPMENT = '_10C0Q79U3' and to_date >='<<m.To_Date>>' group by ident) as e2 on e2.ident
= o.ident left join (select COUNT(*) as cnt, ident from GAS_OBJ_EQUIPMENT where EQUIPMENT =
'_0ZT0KQVNQ' and to_date >='<<m.To_Date>>' group by ident) as e3 on e3.ident = o.ident left
join (select COUNT(*) as cnt, ident from GAS_OBJ_EQUIPMENT where EQUIPMENT = '_0ZT0KUB4M' and
to_date >='<<m.To_Date>>' group by ident) as e4 on e4.ident = o.ident where has_meter > 0 AND
i.ident = '_10713TN3U' AND i.include = 0 AND actl_date >='<<m.From_Date>>' AND actl_date
<='<<m.To_Date>>' GROUP BY o.site, o.city, o.village, o.hot_water, o.ident, Pl, Kl, Vn, Kt
EndText

IF NOT E_SQL(E_GetTableSource('gas_objects'),q_text,'_v_cnt_meter_t',,,,m.oAccess)
RETURN .F.
ENDIF
select site, city, village, count(ident) as cnt, hot_water, SUM(v_meter) as v_meter, Pl,
Kl,Vn,Kt from _v_cnt_meter_t GROUP BY site, city, village, hot_water, Pl, Kl,Vn,Kt into cursor
_v_cnt_meter

select (m._alias)
return ""

Если я к запросу применяю функцию E_SQL_SELECT_CONVERT то получается следующее (переносы
расставил для наглядности)

SELECT O.SITE, O.CITY, O.VILLAGE, O.IDENT, O.HOT_WATER,
CASE WHEN ISNULL(E1.CNT,0)>0 THEN 1 ELSE 0 END AS PL,
CASE WHEN ISNULL(E2.CNT,0)>0 THEN 1 ELSE 0 END AS KL,
CASE WHEN ISNULL(E3.CNT,0)>0 THEN 1 ELSE 0 END AS VN,
CASE WHEN ISNULL(E4.CNT,0)>0 THEN 1 ELSE 0 END AS KT ,
SUM(I.SUM) AS V_METER
FROM GAS_OBJECTS O
JOIN DOC_HEAD H ON O.IDENT = H.OFO_IDENT
JOIN DOC_ITEM I ON I.POINTER = H.POINTER
LEFT JOIN
(SELECT COUNT(*) AS CNT, IDENT
FROM GAS_OBJ_EQUIPMENT
WHERE EQUIPMENT = '_0ZP0YP8T6'
AND TO_DATE >='20060430 23:59:59'
GROUP BY IDENT
) AS E1 ON E1.IDENT = O.IDENT
LEFT JOIN
(SELECT COUNT(*) AS CNT, IDENT
FROM GAS_OBJ_EQUIPMENT
WHERE EQUIPMENT = '_10C0Q79U3'
AND TO_DATE >='20060430 23:59:59'
GROUP BY IDENT
) AS E2 ON E2.IDENT = O.IDENT
LEFT JOIN
(SELECT COUNT(*) AS CNT, IDENT
FROM GAS_OBJ_EQUIPMENT
WHERE EQUIPMENT = '_0ZT0KQVNQ'
AND TO_DATE >='20060430 23:59:59'
GROUP BY IDENT
) AS E3 ON E3.IDENT = O.IDENT
LEFT JOIN (
SELECT COUNT(*) AS CNT, IDENT
FROM GAS_OBJ_EQUIPMENT
WHERE EQUIPMENT = '_0ZT0KUB4M' AND TO_DATE >='20060430 23:59:59'
GROUP BY IDENT
) AS E4 ON E4.IDENT = O.IDENT
WHERE HAS_METER > 0 AND I.IDENT = '_10713TN3U'
AND I.INCLUDE = 0 AND ACTL_DATE >='20060401 00:00:00'
AND ACTL_DATE <='20060430 23:59:59'
GROUP BY O.SITE,O.CITY,O.VILLAGE,O.IDENT,O.HOT_WATER,
CASE WHEN ISNULL(E1.CNT,0)>0 THEN 1 ELSE 0 END,
CASE WHEN ISNULL(E2.CNT,0)>0 THEN 1 ELSE 0 END,
CASE WHEN ISNULL(E3.CNT,0)>0 THEN 1 ELSE 0 END,
CASE WHEN ISNULL(E4.CNT,0)>0 THEN 1 ELSE 0 END

Программа выдает такую ошибку. Красным выделено, где стоят лишние WITH (NOLOCK), на которые
сервер и ругается. (Весь текст запроса не влез)


SQL Server error: Ошибка подключения: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect
syntax near the keyword 'WITH'. (Macro= SELECT O.SITE, O.CITY, O.VILLAGE, O.IDENT, O.HOT_WATER,
CASE WHEN ISNULL(E1.CNT,0)>0 THEN 1 ELSE 0 END AS PL, CASE WHEN ISNULL(E2.CNT,0)>0 THEN 1 ELSE
0 END AS KL, CASE WHEN ISNULL(E3.CNT,0)>0 THEN 1 ELSE 0 END AS VN, CASE WHEN ISNULL(E4.CNT,0)>0
THEN 1 ELSE 0 END AS KT , SUM(I.SUM) AS V_METER FROM GAS_OBJECTS O WITH (NOLOCK) JOIN
DOC_HEAD H WITH (NOLOCK) ON O.IDENT = H.OFO_IDENT JOIN DOC_ITEM I WITH (NOLOCK) ON I.POINTER
= H.POINTER LEFT JOIN (SELECT COUNT(*) AS CNT, IDENT FROM GAS_OBJ_EQUIPMENT WITH (NOLOCK)
WHERE EQUIPMENT = '_0ZP0YP8T6' AND TO_DATE >='20060531 23:59:59' GROUP BY IDENT) WITH
(NOLOCK) AS E1 ON E1.IDENT = O.IDENT LEFT JOIN (SELECT COUNT(*) AS CNT, IDENT FROM
GAS_OBJ_EQUIPMENT WITH (NOLOCK) WHERE EQUIPMENT = '_10C0Q79U3' AND TO_DATE >='20060531
23:59:59' GROUP BY IDENT) WITH (NOLOCK) AS E2 ON E2.IDENT = O.IDENT LEFT JOIN (SELECT
COUNT(*) AS CNT,
Вопрос:

Можно как-то сделать так, что бы текст запроса не конвертировался? Я сам отвечаю за синтаксис
и запрос будет выполняться только на SQL сервере.


С уважением,
Кравцов Владимир Геннадьевич


ЛЕЕ> При проверке дат для переначисления брать не 2 часа, а
ЛЕЕ> сутки запаса. Согласовано с начальником.

ЛЕЕ> С уважением, Левитина Елена Ефимовна
ЛЕЕ> инженер-программист ООО "Брянскрегионгаз"
ЛЕЕ> (4832) 68-09-52
ЛЕЕ> -----Original Message-----
ЛЕЕ> From: Vallmind [mailto:Contact@vallmind.com]
ЛЕЕ> Sent: Tuesday, May 23, 2006 6:01 PM
ЛЕЕ> To: Левитина Елена Ефимовна
ЛЕЕ> Subject: Re: Документ5

ЛЕЕ> Ну может и так. Просто раньше ставили вопрос, что при принятии решения
ЛЕЕ> на пересчёт программа не смотрит изменения в лицевых счетах. Я именно
ЛЕЕ> против этого возражал.
ЛЕЕ> Ну а при расчёте локальная станция тянет пачку данных на сервер,
ЛЕЕ> считает и закидывает обратно документы. Естественно если в эти минуты
ЛЕЕ> кто-то изменяет источник - это не пересчитается.
ЛЕЕ> Единственный выход вижу - отбирать на пересчёт не дату модификации
ЛЕЕ> документа < даты модификации счёта, а ещё брать пару часов запаса.

ЛЕЕ> Tuesday, May 23, 2006, 3:27:15 PM, you wrote:

ЛЕЕ>>  А я считаю, что это именно такая ситуация. Посмотри док.
ЛЕЕ>> Ну так что, для Брянска опять считать полностью?

ЛЕЕ>>  <<Doc5.doc>>


Думаю, что это не та ситуация. Расчёт льгот был позже изменения
карточек в районах. Но до расчёта льгот эти карточки не передали или не
приняли, а приняли их после расчёта льгот. MODIFIED у них раньше
расчёта льгот.
Понятия не имею как это отлавливать.
Выход один - пересчёт всего подряд

Tuesday, May 23, 2006, 2:45:37 PM, you wrote:

ЛЕЕ> Андрей, выяснилась такая ситуация. Для начисления по
ЛЕЕ> льготам Фокинский участок передавал базу 24 апреля вечером.

ЛЕЕ> 25 апреля запустили в ЦБ по льготникам расчет.
ЛЕЕ> Счетаформировались в течение 4 часов. В это время по некоторым
ЛЕЕ> карточкам поправилиданные, но время modifiedизменениякарточки
ЛЕЕ> оказалось меньше времени формирования счетов. В результате
ЛЕЕ> приокончательном пересчете только измененных абонентов в конце
ЛЕЕ> месяца такие карточки на пересчет не попали. Как будем
ЛЕЕ> выкручиваться в такой ситуации?


Пусть Владимир попробует написать функции средством Система\Системные
средства\VFP функции в формате существующих функций для отчёта по
объёмам. Если не получится - я напишу пример. Но хотелось бы чтобы он
всё мог делать сам

Thursday, May 11, 2006, 4:50:53 PM, you wrote:

ПАД> Важна последняя заявка 326, т.к. на основе новых функци
ПАД> нужно еще отчет делать, который нужен будет в Москве 29 мая.
 


В локальных системных установках проверь уровень изоляции трансакций
"Default" и включён ли флажёк "Выполнять Select SQL без блокировок"



Friday, April 28, 2006, 5:46:20 PM, you wrote:

ААВ>  
ААВ> Андрей,  я посмотрел в SQL блокируются таблицы, раньше этого небыло.
ААВ> Это и замедляет работу. Все в куматозе.

ААВ> Блокирубтся таблицы.doc


1. Setup
2. В меню НСИ\Сортировка квитанций

Проявляй чудеса сообразительности! По умолчанию всё печатается как печаталось. Если для какого признака нужна своя сортировка - добавляешь его по тем же правилам как и в схеме расчёта. Внутри одного признака можно для других признаков отдельную сортировку. Для интервала домов, например, нужно указать дом > ... и потом к нему же прерисовать дом < ... Для полследнего указать сортировку. Если сортировка для какой точки ветки не указаана, то работает ближайшая верхняя этой ветки.

Придумай более правильные подсказки на кнопки
 


Пофигизм - поддаваться любого рода искушениям, даже тем, которым в состоянии противостоять.

Книжку покупал очень давно. Где - не помню.

Царство Небесное нужно смотреть в хорошей обстановке. Там есть выражения, которые нельзя пропустить, например:

- Церковь не признает меня (Балеан);
- Церковь - это творение рук человеческих. Когда я слышу "Церковь" - я вижу толпы фанатиков жаждущих исполнить волю Божбю. Святость - она в твоих мыслях, делах и поступках. И от них зависит благочестив ты или нет. Святость - она вот здесь (показывает на лоб) и вот здесь (показывает на грудь)

...

"Король требует повиновения, отец послушания. Но прежде всего ты должен помнить, что когда попадёшь на суд ко Всевышнему, то ты не сможешь оправдаться говоря, что ВЫПОЛНЯЛ ПРИКАЗ!    КАЖДЫЙ ЗА ДУШУ ДЕРЖИТ ОТВЕТ!"

и многие другие ...

ПСБ> Привет, Андрей!
ПСБ> Искал слово пофигизм с своих письмах, нету такого. Но,
ПСБ> думаю, что пофигизм - это когда тебе по фигу мнение других людей,
ПСБ> твоих братьев по вере, по любому поводу т.е. наступает первая
ПСБ> стадия мания величия.
ПСБ> Слышал ли ты о Варавве? О его дальнейшей судьбе?
ПСБ> Пиши. Сергей.
ПСБ> Вчера посмотрел половину "Царствие Божие", остальное не
ПСБ> дали Антюшины, но пофигизм к ним не проявил.
ПСБ> Кстати, где книжку нашел про реинкарнацию?
ПСБ> Будь здоров!


См. в интернет:    Долина разума    Система учета "Events"     Рассчеты с населением за газ    Предприниматель     Инструментальные средства "EvnFox"    www.vallmind.ru    EasySQL4Fox    ECalcPad    VMZipper    Святая трезвость    Трезвая Россия