Инструмент за Ad-Hoc докладване на краен потребител: Microsoft SQL Server Management Studio или Microsoft Access?

Нашият централизиран ИТ отдел предложи два основни ad hoc инструмента за заявки за общата ни потребителска база от приблизително 200 служители:

  1. Microsoft SQL Server Management Studio 2008 (SSMS)

  2. Microsoft Access 2003

Околна среда

  • Бекенд базата данни е Microsoft SQL Server 2005 база данни само за четене.

  • Схемата е 400+ таблици; разрешаването на достъп до необработените данни за нашия генерален щаб би било катастрофа.

  • Ще изградим „абстрактни слой“ върху необработените данни, за да може нашият генерален щаб да изпълнява ad hoc заявки.

  • Абстракционният слой най-вероятно ще съдържа няколко изгледа.

  • Редица потребители имат основни познания в Microsoft Access; никой не е използвал SSMS.

Кой от горните инструменти (или алтернатива) би бил най-добър за определено нетехнологична потребителска база от приблизително 200 души? Какви са плюсовете и минусите на всеки от тях?

Освен това ИТ отделът предложи да научи хората на T-SQL, за да могат да използват SSMS. Това разумно ли е?


person iokevins    schedule 04.12.2009    source източник
comment

По-доброто събитие за обработка тук е KeyDown. KeyDown ще се задейства, когато потребителят изрично въведе в полето или друг компонент симулира потребители, които пишат, като изпраща съобщения до TextBox. Това отговаря на сценария, който описахте.

Ако от друга страна изберете да отговорите на събитието TextChanged, вие ще отговаряте на всеки случай, когато текстът е променен (от потребител или от код). Това означава, че вашето събитие ще бъде повдигнато, ако изрично кажа

someBox.Text = Environment.NewLine;
  -  person David-W-Fenton    schedule 05.12.2009
comment
Освен това ИТ отделът предложи да научи хората на T-SQL, за да могат да използват SSMS. Това разумно ли е? Съмнявам се, че дори опитните потребители ще искат да знаят това ниво на детайлност. Моите опитни потребители се чувстват удобно да създават и изпълняват свои собствени заявки в Access, като използват функциите за плъзгане и пускане. Много се съмнявам, че някога са се отказали от SQL дизайн изглед. Но тогава не им се наложи.   -  person Tony Toews    schedule 05.12.2009


Отговори (9)


Вашият „абстракционен слой“ е правилният подход, който да предприемете с Access. Създайте MDB с необходимите основни изгледи, свързани в него, и го разпространете на потребителите. Позволете им да създават нови заявки и отчети в собствената си MDB според изискванията.

Сега как ще ги спрете да изпълняват декартово съединение на маси с милион или повече записи, не съм съвсем сигурен.

person Tony Toews    schedule 04.12.2009
comment
Благодаря Тони. :) Отлична точка, която трябва да имате предвид. Нашата най-голяма таблица е може би 100 000 записа в този момент, но все още сме в средата на внедряването, така че този брой вероятно може в крайна сметка да достигне милион или повече. - person iokevins; 05.12.2009
comment
+1 Access MDB е правилният начин, ако искате да дадете възможност на потребителите да правят свои собствени заявки - person Dale; 05.12.2009

Какво ще кажеш за този? i-net Clear Reports (преди се наричаше i -net Crystal-Clear) има мощен ad hoc компонент за отчитане, който е направен да бъде лесен за използване нещо за нетехнически потребители. Вашите потребители изобщо няма да трябва да знаят нищо за докладването. Те просто избират вида на отчета, данните и готово, има отчет, който отговаря на нуждите.

Абстракцията на данни може да се направи лесно чрез създаване на така наречените изгледи на данни, които могат да бъдат проектирани от напр. вашата администрация. Има различни начини за достъп до GUI за ad hoc отчитане. Имаме уеб GUI, Java аплет или самостоятелна Java програма.

  • Крайните потребители няма да се нуждаят от обучение, тъй като GUI е силно интуитивен.
  • Изгледите могат лесно да бъдат изградени чрез плъзгане и пускане в допълнение към настройването на типове данни, формати и т.н.
  • Всички отчети (в зависимост от настройките за сигурност) могат да бъдат достъпни чрез DAV нашия графичен интерфейс за хранилище на отчети.
  • Сървърът поддържа различни настройки за сигурност за потребител или за група.
  • Самостоятелният дизайнер на отчети е безплатен и напълно функционален.

Разкриване: Да. Работя за компанията, която е построила това.

person gamma    schedule 12.06.2010

Microsoft има безплатен инструмент за бизнес и крайни потребители, който се нарича „Създател на отчети“. Той поддържа пълните възможности на SQL Server Reporting Services. Хубавото е, че предоставя потребителски интерфейс, подобен на Microsoft Office.

Можете да изтеглите най-новата версия "Report Builder 3.0" от тук http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=6116

А за повече информация относно MS Report Builder проверете тази връзка http://technet.microsoft.com/en-us/library/dd207008.aspx

person Mohamed Ramadan    schedule 14.11.2011

Опитът да се научат хора, които не са специалисти в технологиите, на T-SQL да заявяват схема с 400+ таблици вероятно няма да се справят добре, освен ако не са ограничени до запитване само до изгледите, а изгледите крият всички грозни сложности на различни съединения , групиране и др.

Нашата компания беше в подобна ситуация, в която Access беше използван в началото, а след това превключихме всички да използват T-SQL и SSMS. IMO, това е подходът, който бихте искали да предприемете.

Отново обаче, успехът на това ще зависи от качеството на вашите изгледи или още по-добре от отчетите, които предоставяте на вашите крайни потребители.

Ранди

person Randy Minder    schedule 04.12.2009
comment

Ако данните трябва да бъдат четими, което предполагам е вашата цел, няма начин да попречите на посветен човек да ги вземе и използва. Преобразуването в изображение ще го затрудни, но всеки с добър OCR или екип от евтина чуждестранна работна ръка може да получи всичко, което поиска от него. Ако данните са супер чувствителни и се притеснявате за това, наистина трябва да преразгледате стойността на публикуването им.

- person iokevins; 04.12.2009
comment
Страхувам се, че не знам. Но подозирам, че можете да скриете таблиците чрез разрешения, но не съм толкова запознат със сигурността на SQL Server. - person Randy Minder; 04.12.2009
comment
Като част от сигурността на вашия SQL Server потребителите няма да могат да виждат таблици, където са им отказани всички разрешения. - person JeffO; 05.12.2009

Бих разгледал повече нещо като Stonefieldquery.com, което е предназначено за неразработчици за създаване на отчети. Не че писателят на отчети или създателят на заявки в Access е лош, но може да е твърде много. Мисля, че те също предоставят начин за централизиране на отчети и заявки, където могат да бъдат споделяни. Няколко души няма да могат да отворят един файл за достъп и да създадат отчет (мисля, че изграждането на заявка е ОК.).

Повечето ще използват възможността за плъзгане и пускане, но около 5-10% ще се появят нужда от SQL и тогава можете да се възползвате от „момента за обучение“ и да ги обучите.

person JeffO    schedule 04.12.2009
comment
Благодаря на GuinnessFan. :) Много проницателен за съотношенията между обикновените и опитните потребители. Моята интуиция ми казва, че това изглежда правилно. За 80%+ от обикновените потребители се нуждаем от нещо, което можем да внедрим доста лесно. Най-вече съм загрижен за какви капани ще се натъкнем, използвайки SSMS с широка аудитория. Използвам го през цялото време в моята ИТ роля. - person iokevins; 04.12.2009
comment
Работих във фирма, в която счетоводителите използваха SSMS и Excel за всичко. Те преминаха курсове и по двете. Те не харесваха да бъдат превключени към софтуер за писане на отчети, защото а) предпочитаха текстов sql и текстовата версия в това приложение беше лоша (подобно на достъпа). б) не са знаели как да се възползват от споделянето и повторната употреба на това приложение. В тяхното съзнание всичко беше уникално, еднократно, ad hoc и т.н. - много териториално в това отношение. - person JeffO; 04.12.2009

Минусите за достъп със сигурност биха били разходи; SSMS трябва да е безплатен, ако приемем, че сте правилно лицензирани за SQL сървъра.

В зависимост от действителните нужди, някои потребители може действително да са по-добре с Crystal Reports (никога не съм мислил, че ще кажа това) или Reporting Services.

person SqlACID    schedule 04.12.2009
comment
Благодаря SqlACID. :) SSRS и Report Builder бяха моят първи избор, но ИТ и бизнес ръководството избраха тази стратегия вместо това. Всичките 200 служители имат инсталирана база от потребители на Microsoft Access 2003, така че тази цена, да се надяваме, няма да е проблем. - person iokevins; 04.12.2009

можете да създадете поредица от кубчета за анализ на sql сървър и потребителите да се свържат с тези, които използват excel, така че да могат да използват обобщените таблици на excel.

person DForck42    schedule 04.12.2009
comment
Благодаря Thirster42! :) Не го бях обмислял този вариант. Какви недостатъци би имал този подход? - person iokevins; 05.12.2009
comment
основно поддръжка. ще трябва да създадете достатъчно кубчета, за да покриете това, което искат (или просто да хвърлите всичките 400 в един куб). а също и сигурност. - person DForck42; 05.12.2009
comment
също така можете да настроите набори от данни в услугите за отчитане и да позволите на потребителите да създават свои собствени отчети в мениджъра на отчети. - person DForck42; 07.12.2009

Тъй като бях начинаещ в ad hoc докладването и вършех работата сам, използвах ad hoc докладване на Izenda.com. Беше много ясно и можех да го направя сам срещу аутсорсинг.

person Marc Murray    schedule 16.04.2012
comment
Публикацията е стара, но тъй като ще се търси като справка, има смисъл да добавите своя опит тук дори след това време. Благодаря - person Johanness; 30.04.2012

Проверете SQLS*Plus - http://www.sqlsplus.com

Открих, че SQLS*Plus е много ефективен инструмент за отчитане на SQL сървър на командния ред - това е безплатен инструмент (за лична употреба) и ми позволява да генерирам отчети със заглавия, заглавки в HTML и CSV формати, да форматирам колони в персонализирани маски , задайте дължина на отчета, размер на страницата и т.н. Доколкото разбирам, той е много подобен на много добре познатия инструмент за отчитане Oracle SQL*Plus

person Ron Warshawsky    schedule 07.11.2013