централизовать отчет в приложении winform - PullRequest
0 голосов
/ 06 августа 2009

Я работаю над приложением winform и хотел бы, чтобы такие же отчеты были доступны другим, когда они редактируются или изменяются. В настоящее время при изменении отчета мне нужно повторно развернуть приложение или скопировать файл отчета в папку. Я ищу альтернативу.

Суперпользователи приложения имеют возможность перейти в режим разработки и редактировать отчет. Есть ли способ, которым я могу передать поток изменений отчета обратно в БД? ... файл отчета будет сохранен в БД, и когда пользователь откроет приложение, отчет копируется. Что порекомендуют некоторые из вас, умные?

Ответы [ 2 ]

0 голосов
/ 06 августа 2009

Я не знаю специфику вашей ситуации, поэтому эта первая идея может быть неосуществимой, но я подумал, что я бы выдвинул ее как идею на тот случай, если вы не подумали об этом.

Не могли бы вы сделать отчеты в ASP.Net или SQL Server Reporting Services, и чтобы приложение Windows открывало отчеты с помощью вызова System.Diagnostoc.Process или с помощью одной из форм иметь элемент управления WebBrowser?

Одно из приложений, которое я сделал, дало конечным пользователям большую гибкость в изменении критериев отчета. В этой ситуации они хотели, чтобы все отчеты выглядели одинаково, но для отчетов, основанных на разных критериях, я в итоге предоставил им форму в Win App для самостоятельного построения критериев, как при использовании Query Designer для SQL Server. .

Службы отчетов SQL Server также предоставляют конечным пользователям некоторую гибкость. Там участвуют некоторые тренинги, но если они сейчас создают отчеты, я не думаю, что кривая обучения очень крутая.


Совершенно иным способом, более близким к тому, что вы просили, одним из быстрых и грязных обходных путей, с которым мы столкнулись в подобной ситуации, было сохранение отчетов где-нибудь на веб-сервере, чтобы обычные пользователи открывали их через http Это означает, что они не могли сохранить их на сервере. Редакторы отчетов, с другой стороны, получили права на репорты на веб-сервере через общий файловый ресурс. Они могут открыть этот общий доступ и отредактировать отчеты, а затем сохранить их в общей папке. В следующий раз, когда пользователь откроет отчет, будь то через http или общий метод, он получит последнюю версию.

0 голосов
/ 06 августа 2009

Не претендует на то, чтобы быть таким умным, но с возможностью редактирования это звучит так, как будто вы в конечном итоге с расхождениями между созданным отчетом и последним сохраненным отчетом. В этом случае было бы лучше иметь «таблицы отчетов» для отчета и заполнять их при создании отчета. Когда пользователь хочет редактировать отчет, используйте эти таблицы. Это позволяет пользователю редактировать отчет, но при этом сохранять исходные значения без изменений; хорошей идеей будет также аудит изменений, которые пользователь вносит в отчет.

Либо просто сохраните отчет в виде документа в базе данных вместе с отметкой времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...