|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Проблема состоит в следующем: Есть таблица Место_Установки. Поля: КодМУ, НазваниеМУ Есть таблица Показания Поля: КодМУ, Дата_Показания, Показание Таблицы связаны Один к многим от Места Установки к Показаниям по КодМУ (у каждого места установки есть много показаний, например 12, или 24,вобщем показания электросчетчика на каждый месяц N-года) Есть запрос: обе таблицы, связь один-к-многим Поле КодМУ , поле НазваниеМУ , поле Дата_Показания , поле Показание . На основание этого запроса сделана простая форма для ввода показаний каждый месяц. ВОПРОС: Не могу сделать запрос так, чтобы у него, кроме выше указанных полей, были поля Показания на начало и Показания на конец , или начало и конец . Так как показания электросчетчика текущего месяца в следующем месяце становяться начальными, а в этом месяце они конечные. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.09.2006, 04:49 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
можете в основном запросе добавить два поля, которые вычисляются "итоговым" подзапросом (для опредения начальных/конечных значений на периоде, которому принадлежит "дата этой строки") ... |
|||
:
Нравится:
Не нравится:
|
|||
26.09.2006, 05:02 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ILL HEADможете в основном запросе добавить два поля, которые вычисляются "итоговым" подзапросом (для опредения начальных/конечных значений на периоде, которому принадлежит "дата этой строки") Спасибо большое, но у меня не получилось. Если не трудно, я прикрепил примерчик=15 кB, помогите, пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2006, 04:22 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
делаем модуль с таким содержимым: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
Код: plaintext 1. 2. 3. 4.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2006, 05:39 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
передавайте привет Чубайсу ! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2006, 07:39 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Спасибо, большое, привет передам, тока я работаю в Газпроме, и не могут мне дать нормального программера для написания проги по учету электроэнергии - вот сам взялся, тока VBA - пока темный лес. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2006, 18:13 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
rus_75Спасибо, большое, привет передам, тока я работаю в Газпроме, и не могут мне дать нормального программера для написания проги по учету электроэнергии - вот сам взялся, тока VBA - пока темный лес. Да-уж В Газпроме нет программки по учёту электроэнергии? Хотя чего её учитывать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2006, 21:42 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Возникла проблема: Я ввел поле расхода и увидел несостыковку - Запуская Запрос с условием отбора по Счетчику 2 видим, что 3-е по счету показание на 31.07.2006=815 , поле "Показание_начало_месяца" показывает 1201 - что физически не может быть, оно должно показывать введенное показание=745 на 30.06.2006 Счетчик 2 31.07.2006 815- введ. на эту дату 1201 -пок_нач-мес( 745 ) 2016 ( !!! ) -пок_конец_мес В поле "Пок_конец_мес" он суммурет показания, а должен показывать. Думаю это прописано в коде :( ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 05:00 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
дайте (НЕсловестный) пример результата для всей таблицы что должно быть для каждой строки в колонках показания на начало и конец ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 05:19 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
в каком городе стоят ваши счетчики ? похоже что гдето недалеко от меня %) ... если так - то газпрому может крупно повезти ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 06:00 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
rus_75Проблема состоит в следующем: Есть таблица Место_Установки. Поля: КодМУ, НазваниеМУ Есть таблица Показания Поля: КодМУ, Дата_Показания, Показание Таблицы связаны Один к многим от Места Установки к Показаниям по КодМУ (у каждого места установки есть много показаний, например 12, или 24,вобщем показания электросчетчика на каждый месяц N-года) Есть запрос: обе таблицы, связь один-к-многим Поле КодМУ , поле НазваниеМУ , поле Дата_Показания , поле Показание . На основание этого запроса сделана простая форма для ввода показаний каждый месяц. ВОПРОС: Не могу сделать запрос так, чтобы у него, кроме выше указанных полей, были поля Показания на начало и Показания на конец , или начало и конец . Так как показания электросчетчика текущего месяца в следующем месяце становяться начальными, а в этом месяце они конечные. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Ну а присобачить это к своему запросу - ты уж сам. Ключевое слово: UNION. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 07:13 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Вот что надо (Excel), спасибо за помощь, счас попробую прикрутить это к запросу. Посмотрите вложение. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 17:05 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Счетчики стоят в г. Екатеринбург :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2006, 17:06 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
rus_75Счетчики стоят в г. Екатеринбург :) То-то мне всегда кажется - обсчитывают, скотины... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2006, 06:31 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ILL HEADв каком городе стоят ваши счетчики ? похоже что гдето недалеко от меня %) ... если так - то газпрому может крупно повезти Посмотрите, пожалуйста, вложение Excel ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2006, 05:37 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
все делаем с нуля (предыдущие запрос и функции удалите) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: plaintext 1. 2. 3. 4. 5. 6.
Место_Установки_код_му показания_код_му му дата_показ показание показания_начало_месяца показания_конец_месяца Расход1 1 Счетчик 1 30.06.2006 5468 0 5468 54681 1 Счетчик 1 31.07.2006 5589 5468 5589 1211 1 Счетчик 1 31.08.2006 5671 5589 5671 821 1 Счетчик 1 30.09.2006 5771 5671 5771 1002 2 Счетчик 2 31.05.2006 456 0 456 4562 2 Счетчик 2 30.06.2006 745 456 745 2892 2 Счетчик 2 31.07.2006 815 745 815 703 3 Счетчик 3 31.10.2006 96287 0 96287 962873 3 Счетчик 3 30.11.2006 96400 96287 96400 1133 3 Счетчик 3 31.12.2006 96520 96400 96520 1203 3 Счетчик 3 31.01.2007 97000 96520 97000 4803 3 Счетчик 3 28.02.2007 97200 97000 97200 200запрос конечно не оптимальный, но я не стал все менять чтобы была видна логическая связь с предыдущим ИМХО все работает как надо ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2006, 07:26 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Большое спасибо!!! COOL!!! C меня пиво :)) P.S. Можно Вам еще будет задать вопрос, если возникнет? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 04:42 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
велкам ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 04:49 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
только я не понял ... в ебурге ... это в каком штате ? (сколько минус от гринвича ? ... а то пишите в какоето непонятное время ) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 04:51 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Посмотри файл Electro2k.zip http://msa.polarcom.ru/downloads.htm Там всё открыто может что-нибудь подойдёт тебе. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 10:08 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
to rus_75, ILL HEAD: Мне кажется, что основываться на максимальных показаниях (max(nz(показание,0))) не совсем правильно. Дело в том что существует такой момент в жизни счётчика, когда текущие показания становяться меньше предыдущих - т.н. "переход через 0", некоторые типы счётчиков обнуляют при поверке (возможно к электрическим последнее не относится - я работаю с узлами учёта газа). Тогда предложенная функция будет давать не правильные результаты. Эти вещи конечно можно игнорировать и вместо 100 вносить 100100 и т.д. до бесконечности. Можно изначально учесть в структуре БД и соответственно обрабатывать. Но наиболее простой вариант - от последнего значения счётчика, в заданном интервале, отнимать предыдущее, обрабатывая показания в зависимости от разрядности счётного механизма. Хотя, подозреваю, что это лишние усложнения для данной задачи. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 18:37 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
2rus_75 мыло/аська в профиле , обращайся. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 19:04 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiL ...(возможно к электрическим последнее не относится - я работаю с узлами учёта газа). ... Подозреваю: SNiL работает в РАО ЕЭС... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2006, 21:13 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiLto rus_75, ILL HEAD: Но наиболее простой вариант - от последнего значения счётчика, в заданном интервале, отнимать предыдущее, обрабатывая показания в зависимости от разрядности счётного механизма. Хотя, подозреваю, что это лишние усложнения для данной задачи. Этот переход я сделал через IIf, с указанием разрядности счетчика - работает вообще нормально :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2006, 04:36 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
вадя2rus_75 мыло/аська в профиле , обращайся. Спасибо большое, если, что -обращусь. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2006, 04:38 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Доброго времени суток!:) Возникла проблема: Имеется таблица Счетчики, в ней содержится информация о всех счетчиках предприятия. На предприятии есть несколько объектов, например 3 штуки. Объект №2 питается от двух вводов, соответственно на каждом вводе стоит счетчик - Счетчик1 и Счетчик 2. Под Счетчиком 1 установлены еще 3 счетчика - Счетчик 1.1, Счетчик 1.2, Счетчик 1.3. В свою очередь под Счетчиком 1.1 установлены еще 2 счетчика - Счетчик 1.1.1 и Счетчик 1.1.2 Например за ноябрь месяц расходы счетчиков составили: Счетчик1=1200 кВт , Счетчик2=900 кВт Счетчик 1.1=600 кВт , Счетчик 1.2=100 кВт, Счетчик 1.3=200 кВт Счетчик 1.1.1 =200 кВт, Счетчик 1.1.2=300 кВт В отчете должно быть так: Расход по Объекту 2 Счетчик 1 расход = 300 (1200-(600+100+200)) Счетчик 2 расход = 900 Счетчик 1.1 расход = 100 (600-(200+300)) Счетчик 1.2 расход = 100 Счетчик 1.3 расход = 200 Счетчик 1.1.1 расход = 200 Счетчик 1.1.2 расход = 300 Итого по объекту 2 расход = 2100 Вопрос, как реализовать это? В данный момент в запросе получается, что каждому счетчику соотвествует свой расход, но как их обработать, чтобы получился такой запрос и на его основе-отчет (см. Выше). Второй путь - Разбить на 3 таблицы (Главная, Второстепенная, Третьестепенная) - но ведь счетчики обладают одними и теми же свойствами (тип счетчика, номер счетчика, показания на начало, показания на конец), сделав это мы нарушим правило нормализации, и как в этом случае получить нужный отчет. Вобщем сломал голову :). Помогите, пожалуйста. Прикрепил схему в jpeg ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 18:21 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Похоже, мы становимся свидетелями начального этапа разработки нормальной коммерческой системы учета для РАО ЕЭС. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 21:34 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
id, тип счетчика, номер счетчика, уровень счетчика, id счетчика предыдущего уровня. добавь эти поля при внесении нового счетчика эти поля вводятся вручную из схемы id счетчика предыдущего уровня - берётся из этойте таблицы новая таблица id, id счетчика, показания , дата показаний при таком можно и уровни добавлять и вычислять что угодно ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 21:59 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Id в первой таблице тип счетчик , вручную не вводятся ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 22:00 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
давай в Ебурге напишу такое. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 22:05 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ЗЫ только схема на рисунке составлена не верно вводы не могут объединяться , хоть и должна существовать возможность их переключения нада либо учитывать /снимать показания на момент переключения и соответственно на этоже время менять и учитывать это в ид счетчиках верхнего уровня , либо учитывать показания счетчиков на вводах как один. иначе будет путанца второй вариант предпочтительней ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 22:14 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
PS так же нада учесть возможность смены счетчика, дата , показания. старого и нового иначе смена счетчика приведет к бесполезности этого софта ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2006, 22:34 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
вадяЗЫ только схема на рисунке составлена не верно вводы не могут объединяться , хоть и должна существовать возможность их переключения нада либо учитывать /снимать показания на момент переключения и соответственно на этоже время менять и учитывать это в ид счетчиках верхнего уровня , либо учитывать показания счетчиков на вводах как один. иначе будет путанца второй вариант предпочтительней Привет, земляк :)! Схема составлена соотвествии с тем, как это делается в Свердловэнерго. Я это сейчас считаю в Excel - Ввод1+Ввод2 минус все остальное под ними. Главный вопрос - сколько энергии потребил объект, второстепенный по какому вводу :). ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2006, 04:35 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
2 вадя с тебя халявные зажыгалки от гаспрома ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2006, 04:41 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
2 вадя Вот прикрепил по твоему сценарию 2 таблицы. Мне непонятно, как правильно создать запрос, учитывая уровни счетчиков. уровень1 - это два ввода - счетчик 1 и счетчик 2 - они суммируются уровень2 - это под счетчиком 1 установлены 2 счетчика - счетчик 1.1 и счетчик 1.2 уровень3 - это под счетчиком 1.1 установлен счетчик 1.1.1 В таблице, которую приложил, на втором уровне расход будет суммарный по счетчику 1.1 и счетчику 1.2, и от него будет вычитаться расход счетчика 1.1.1, что не правильно. Так как расход счетчика 1.2 не должен добавляться к счетчику 1.1. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2006, 06:09 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
обрати внимание на изменения в таблице счетчики (последний столбец) таблица исправлена в соответсвии с твоим рисунком, чтоб было нагляднее создай заполни таблицу показания для приведенного рисунка. лучше дляя 3 произведенных снятий показаний (для каждого счетчика 4 записи в таблице показаний, 3 снятия + 1 начальное) поставь задачу что нужно посчитать, вывести и т.д. условность: все показания снимаются одновременно (т.е. сумма показаний нижнего уровн равна показаниям счетчика на уровень выше) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2006, 20:54 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
вадя условность: все показания снимаются одновременно (т.е. сумма показаний нижнего уровн равна показаниям счетчика на уровень выше) В том то и дело, что например на счетчике 1.1- 600 кВт это суммарный расход по всем трем счетчикам - Счетчик 1.1.1 (200 кВт) + Счетчик 1.1.2 (300 кВт)=500 кВт, а 100 кВт - это расход по Счетчику 1.1 (600-500). Например, ситуация из жизни - есть головная подстанция (Счетчик 1 и Счетчик 2) -они считают общий расход по подстанции. От подстанции запитаны два завода, которые не принадлежат нашему предприятию (Счетчик 1.1 и Счетчик 1.2.). Этим заводам надо предъявить счет за ИХ электроэнергию (600 и 100 кВт). Но у завода 1 (счетчик 1.1) есть еще два предприятия, которым тоже надо выставить свой счет (на 200 и 300 кВт). Вот посчитав весь "левый расход" и отняв его от головного, узнаем - сколько же потребила наша подстанция на свои нужды. Поэтому утверждение (т.е. сумма РАСХОДОВ нижнего уровня равна РАСХОДУ счетчика на уровень выше) неверно, так как разность расхода головных счетчиков минус расход подиненных- это собственный расход энергии на подстанции. У меня на предприятии всего таких объектов 4 штуки, из них 3 штуки - имеют два уровня, и только один - 3 уровня, по которому я нарисовал схему. Просто хочу сделать сразу такую стуктуру, которая бы учитывала все возможные варианты схем - универсальную. Если , допустим возникнет новый объект с несколькими уровнями вложения счетчиков, то просто в форме это было бы учтено. У меня была мысль разбить на 2 или 3 базы, и просто считать каждый уровень в своей базе (в одной - только главные счетчики, во второй - второстепенные), но решил спросить у спецов, реально ли все это осуществить в одной базе ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2006, 21:35 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
тогда возникаеи вопрос времкни снития показанийесли одновременно то так можно поступить если с разницей внесколько часов - то показания не верны тогда на рисунке нада показать ещё одну ветку пустую и для неё сформулировать метод получения показаний первоначпльно из рисунка этого не видно пожалуйста отобразите такой рисунок и продолжем дальше ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 08:34 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Показания снимаются одновременно во всех случаях ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 12:06 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
это уже легче с аськой как? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 12:37 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
вадято показания не верны если идти от верхнего счетчика к нижним последовательно по узлам, то разночтения можно нивилировать до не существенных значений ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 12:39 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
BULK INSERT вадято показания не верны если идти от верхнего счетчика к нижним последовательно по узлам, то разночтения можно нивилировать до не существенных значений ну это нада будет придумывать алгоритм, учитывать точность измерений счетчиков, и т.д. на первом этапе нада построить работающую модель, причем с возможностью (пока только на уровне мыслей) рашеня дальнейших задач ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 13:17 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Ася 299442102, я тебе писал на аську в профиле, но она видимо не работает. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 14:01 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
работает, но только в рабочее время, я получил. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2006, 18:42 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Как Вы показали в демо-таблице насчет записи ввода 1 и ввода 2 в одну запись - так не получится - надо вести учет расхода по всем физическим счетчикам, просто программно разделять их по уровням и, исходя из этого высчитывать расход косвенным методом с помощью запросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2006, 20:24 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
тогда у тебя должно быть два дерева - для каждого ввода как утебя показано на рисунке - выходы счетчиков соединены - это не правильно тогда в случае (если такое физически возможно) при переключении всего хозяйства на один ввод (аварийная ситуация) ты потеряешь все данные . т.к. на момент перекючения не будут сняты показания. или кто-то будет фиксировать показания счетчиков? а то что у меня показано - вариант. Для облегчения (но это уже избыточность) можно ввести поле номер ввода, избыточным также является и хранение данных в поле расход - это поле вычисляемое по значениям в поле показания счетчиков. я еще раз прошу : нарисуй новый рисунок, где будет присутствовать два дерева, пустая ветка имитирующая вертуальный счетчик (т.е. счетчик показания которого получаются вычислением) тогда задача будет более формализована вопросы - возможны ли переключения с одного ввода на другой и обратно? если да - как при этом будут учитываться показания? - как учитывается точность при измерениях? с большей степенью вероятности можно сказать что сумма счетиков нижнего уровня не будет равна показаниям счетчика верхнего уровня (не считая варианта с виртуальным счетчиком) - как планируется вести учет смены счетчиков? у тебя аська в рабочее время фунциклирует? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2006, 21:20 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
вадятогда у тебя должно быть два дерева - для каждого ввода как утебя показано на рисунке - выходы счетчиков соединены - это не правильно тогда в случае (если такое физически возможно) при переключении всего хозяйства на один ввод (аварийная ситуация) ты потеряешь все данные . т.к. на момент перекючения не будут сняты показания. или кто-то будет фиксировать показания счетчиков? В учете электроэнергии такое соединение является ПРАВИЛЬНЫМ, так как энергосбыту по барабану с какого ввода ты потребил, в документах эти ввода проходят как одная точка и расход по двум счетчикам суммируется, т.е. в отчете ты показываешь расход обоих вводов, допустим, если один ввод не работает, то расход будет равен Ввод1+Ввод2 (0). а то что у меня показано - вариант. Для облегчения (но это уже избыточность) можно ввести поле номер ввода, избыточным также является и хранение данных в поле расход - это поле вычисляемое по значениям в поле показания счетчиков. я еще раз прошу : нарисуй новый рисунок, где будет присутствовать два дерева, пустая ветка имитирующая вертуальный счетчик (т.е. счетчик показания которого получаются вычислением) тогда задача будет более формализована вадявопросы - возможны ли переключения с одного ввода на другой и обратно? если да - как при этом будут учитываться показания? - как учитывается точность при измерениях? с большей степенью вероятности можно сказать что сумма счетиков нижнего уровня не будет равна показаниям счетчика верхнего уровня (не считая варианта с виртуальным счетчиком) - как планируется вести учет смены счетчиков? Ответы: - переключения возможны, но это неважно - показания снимаются один раз в месяц, и без разницы по какому вводу ты потребил - они суммируются, в таблицах счетчиков надо ввести такое поле, чтобы запрос при обработке видел, какие счетчики работаю в паре на первом уровне(ввод1 и ввод2), суммировал их и вычитал подчиненные счетчики. Например запрос считающий первый уровень - он просмотрел все записи и увидел, что счетчиков первого уровня 6 штук, допустим ОБЪЕКТ 1 (ввод1 +ввод2), ОБЪЕКТ 2 (ввод 1, второго ввода нет), Объект3 (ввод1 второго ввода нет), ОБЪЕКТ 4 (ввод1 +ввод2). Далее этот же запрос, или другой запрос подсчитал сколько счетчиков в подчинении есть у каждого из этих объектов и какие из них принадлежат каждому объекту - вычислил их расход. Третий запрос подсчитал сколько счетчиков третьего уровня и какие из них относятся к счетчикам второго уровня. Четвертый запрос(Расход) = Запрос первого уровня - Запрос второго уровня -Запрос третьего уровня. 2. Точность такая, расход нижнего уровня почти всегда меньше расхода первого уровня, поэтому разница между первым и вторым уровнем является расходом певого уровня, посчитанным косвенным методом. 3. Допустим имеет место замены счетчика (любого), допустим в середине ноября месяца. Просто пишем ему показания на ноябрь месяц как конечные (начальные за октябрь у нас есть). Далее вводим новый счетчик (пишем ему имя ввод3), пишем ему его начальные показания как начальные показания на октябрь и также конечные показания на ноябрь. вводится новый счетчик вадяу тебя аська в рабочее время фунциклирует? Да уже включена:) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2006, 06:41 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
rus_75Спасибо, большое, привет передам, тока я работаю в Газпроме, и не могут мне дать нормального программера для написания проги по учету электроэнергии - вот сам взялся, тока VBA - пока темный лес. Да-уж Я вот BP работаю - такая ж история:)) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2006, 10:17 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
Есть очень хорошая программа по учету эл.энергии сдаланная в Access и выложеная и инете как пример. Правда не помню где она лежит. Это классный пример для учебы. Если нужно то она у меня есть, могу переслать как образец. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2006, 10:27 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiL, доброго времени суток! Если есть возможность помогите пожалуйста :) В продолжение этой темы... Подобная база данных с показаниями счетчиков показания со счетчиков пишутся в базу каждую минуту. Необходимы запросы: 1. с выборкой по датам, например, с 03.12.2015 по 24.12.2015 Дата (в нашем случае каждая дата из диапазона) | Начальные показания на эту дату | Конечные показания на эту дату | Количество(конечн. - нач.) Вся загвоздка в том, что между датами получается перелет по показаниям... :( а нужно, чтобы начальные показания "становились"(были) конечными из предыдущей даты. 2. Подобный запрос за сутки в разрезе по часам, то есть с 0 до 23 Номер часа | Начальные показания на этот час | Конечные показания на этот час | Количество (Конечн. - начальн) Тут все тоже самое... :( получается перелет и нужно тоже самое, чтобы начальные становились конечными из прошлого часа В чем заключается "перелет": Показания в базу пишутся с интервалом в минуту (пишутся в 5-ю секунду каждой минуты, но не в этом суть :) ) это выглядит так: 23.12.2015 23:59:05 | 57849 24.12.2015 00:00:05 | 57855 и т.д. и получается что если в запросе брать максимум на 23.12.2015 то это будет 57849, а минимум на 24.12.2015 будет 57855 и в связи с этим не будет учитываться уже целых 6 единиц в итоговой сумме запроса... тоже самое в запросе за сутки по часам... Тут в этой теме есть код запроса...с примерно похожей ситуацией... но как то не получается у меня применить этот код и адаптировать под себя... Будьте добры... разъясните пожалуйста или помогите разобраться на нашем примере... К сожалению файлы прикрепить не могу тут... т.к. размер баз около чуть меньше 10 мб. (базы могу переслать на почту). ЗАРАНЕЕ ОЧЕНЬ БЛАГОДАРЕН!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2015, 05:23 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ЮраСка, как вариант. Результирующий запрос Код: sql 1. 2. 3.
в котором используется запрос Q Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
где Tab - исходная таблица с полями DatTim (дата+время показания) и Indicat (покfзание); параметры: BegPer - дата начала периода, EndPer - дата окончания периода, StepPer - шаг по периоду (h - час, d - день); запрос Digits смотреть здесь 5414410 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2015, 22:49 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
-Практикант-, Спасибо большое за пример! Если позволите, выложу структуру своей базы... Если не трудно, подскажите пожалуйста на моем примере... к сожалению не могу базу выложить целиком - уже около 10 мб. Попробую выложить скрины таблицы, из которой нужно сделать выборку... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2015, 03:58 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ЮраСкаи получается что если в запросе брать максимум на 23.12.2015 то это будет 57849, а минимум на 24.12.2015 будет 57855 и в связи с этим не будет учитываться уже целых 6 единиц в итоговой сумме запроса... ух ты, я бы и не заметил тему, сейчас больше в профильном пт бываю, чем в аксе :) а зачем вам минимум на 24? вам нужен максимум на 23, вообще-то... т.е. вам необходимо узнать расход с 21 по 24. тогда вы берёте максимум за 24 и отнимаете он него максимум за 20 число . а скриншот ваш я вообще не понял. там у вас куча ключей, в значении которых никто кроме вас не разберётся. и ещё вопрос, для повышения образованности, зачем вам такой короткий интервал при снятии значений? расчётный час всё равно ведь больше, скорее всего. p.s. елки-палки десять лет уже прошло как я в теме писал.... пипец какой я старый :( ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2015, 13:23 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiL, Дело в том что нужно именно по датам знать количество...чтобы видеть если есть отклонения... Это счетчики подпиточной воды... В сутки расход по ГВС примерно около 1000 кубов... Есть еще несколько подобных счетчиков... Там суть та же... Таким образом смотрим несколько суток, видим например 23го 1500 кубов, далее открываем эти сутки в разрезе по часам... И уже видим примерно когда большой расход... Лично мне бы хватило того что вы предлагаете, но эксплуатации этого мало :) А для полного решения моего опыта мало :) Тут описано немного побольше и http://www.sql.ru/forum/1192426/zadachka-s-podschetom-pokazaniy-so-schetchikov-pomogite-reshit там вы уже были :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2015, 19:22 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiL, А в скрине я чуток ошибся... Вообще для расчётов берутся 4 поля : ДатаИВремя ТэгИндекс (номер счётчика) Вал (значение по показаниям счетчика) Маркер (поле куда пишется маркер работы счётчика. В - в работе, Е - еррор.) Как то так... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2015, 19:46 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
ЮраСкаSNiL, Дело в том что нужно именно по датам знать количество...чтобы видеть если есть отклонения... Это счетчики подпиточной воды... В сутки расход по ГВС примерно около 1000 кубов... Есть еще несколько подобных счетчиков... Там суть та же... Таким образом смотрим несколько суток, видим например 23го 1500 кубов, далее открываем эти сутки в разрезе по часам... И уже видим примерно когда большой расход... Лично мне бы хватило того что вы предлагаете, но эксплуатации этого мало :) А для полного решения моего опыта мало :) Тут описано немного побольше и http://www.sql.ru/forum/1192426/zadachka-s-podschetom-pokazaniy-so-schetchikov-pomogite-reshit там вы уже были :)я все равно не могу понять в чем проблема? нужно по суткам - выбираем по суткам, нужно по часам- то же самое. главное принцип - начальными показаниями будет максимальное (точнее последнее) значение предыдущего интервала. в чем конкретно проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2015, 20:31 |
|
Период в базе учета эл.энергии
|
|||
---|---|---|---|
#18+
SNiLЮраСкаSNiL, Дело в том что нужно именно по датам знать количество...чтобы видеть если есть отклонения... Это счетчики подпиточной воды... В сутки расход по ГВС примерно около 1000 кубов... Есть еще несколько подобных счетчиков... Там суть та же... Таким образом смотрим несколько суток, видим например 23го 1500 кубов, далее открываем эти сутки в разрезе по часам... И уже видим примерно когда большой расход... Лично мне бы хватило того что вы предлагаете, но эксплуатации этого мало :) А для полного решения моего опыта мало :) Тут описано немного побольше и http://www.sql.ru/forum/1192426/zadachka-s-podschetom-pokazaniy-so-schetchikov-pomogite-reshit там вы уже были :)я все равно не могу понять в чем проблема? нужно по суткам - выбираем по суткам, нужно по часам- то же самое. главное принцип - начальными показаниями будет максимальное (точнее последнее) значение предыдущего интервала. в чем конкретно проблема? Теорию то я прекрасно понимаю :) Проблема в грамотно написании кода, или запросов... В связи с отсутствием опыта... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2015, 02:25 |
|
|
start [/forum/topic.php?all=1&fid=45&tid=1614121]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
126ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 257ms |
0 / 0 |