2010-03-02 1 views
3

지원 헬프 데스크에서 작업하십시오. 새 티켓이 들어오고 레코드가 SQL 테이블에 작성되고 분석가가 선택할 수있는 특정 범주로 레코드가 덤프됩니다.
프런트 엔드는 새 티켓이있을 때 분석가에게 알리지 않으므로 프런트 엔드 (브라우저)를 강제로 새로 고침하여 새 티켓이 'To Be Assigned'폴더로 들어오는 지 확인해야합니다.시스템 트레이 알리미 - SQL Server에서 새 레코드가 생성되면 실행하십시오.

시스템 트레이에 앉아있는 알리미 (GMail 알리미와 비슷한)를 만들고 싶습니다.

누구나 좋은 시작점을 얻었거나 실제로 어떤 종류의 알리미를 만들 수있는 열정을 줄 수 있습니까?

감사

답변

2

폴링은이 작업을 수행하는 한 가지 방법이지만 SQL Server 2005 이상을 사용하는 경우 SQL Server 쿼리 알림을 사용하는 것이 더 효율적인 솔루션입니다. 이렇게하면 "SELECT ID FROM Tickets"와 같은 쿼리를 지정하고 결과가 변경 될 때이를 알릴 수 있습니다. 정보 주셔서

http://www.codeproject.com/KB/database/QueryNotifications.aspx

0

은 시스템 트레이 통지는 기본적으로 브라우저 새로 고침과 같은 일을 할 새 레코드의 서버에 ping 것입니다. 60 초마다 서버에 "핑 (ping)"을하거나, 알림을받는 방법에 따라 더 빠르거나 느릴 수 있습니다.

C#에서 하나를 만드는 것은 거의 쉽지 않습니다. 하지만 당신은 어떤 언어를 쓰는지 말하지 않았습니다. 나는 자바 녀석이 여기 와서 자바로 사소한 것을 말할 것이라고 확신한다. 비단뱀 남자가 와서 우리에게 그가 더 쉽게 할 수 있다고 말해 줄 것입니다.

1

.NET을 사용하는 경우 Timer 개체를 사용하고 "눈금"간격을 60 초로 설정할 수 있습니다. 모든 Tick 이벤트에서 SQL 데이터베이스 테이블을 폴링하고 마지막 티켓 레코드 생성 날짜/시간을 변수에 저장합니다. 그런 다음 마지막 생성 날짜/시간보다 큰 생성 날짜/시간이 삽입 된 티켓 레코드가 있는지 확인하십시오. 다른 Timer 구성 요소를 추가하여 다음 데이터베이스 폴링에 "카운트 다운"할 수도 있습니다. 매끄럽게되기를 원한다면 데이터베이스 폴링 코드를 BackGroundWorker 스레드에 넣어서 SQL Server 연결을 기다리는 동안 GUI가 결코 지워지지 않게하십시오.

+0

감사 : CodeProject의에이 작업을 수행하는 방법에 대한 좋은 튜토리얼이있다. 그게 문제 야. "진짜"개발자는 아니야. (다른 경험 많은 동료들로부터 도움을받을 수는 있겠지만.) 조금만 더 언어를 배웠어. 이상적으로, 이드는 기본 프로젝트를 찾고 싶다. , 이상적으로. NET/Visual Studio 비슷한 프로젝트/자습서/코드 스 니펫에 대한 온라인 링크를 본 사람이 있습니까? 피드백을 주셔서 감사합니다. – Simon