2016. 9. 22. 13:40

PI SMT 상에서 Tag Search 버튼을 눌러도 검색창이 출력되지 않는 오류가 있다.(SMT2016 이하 버전)


해당 오류는 SMT의 bug이며, 해당 오류 수정 방법은 PI SDK상에서 PI 서버명을 IP가 아닌 서버명으로 변경한 후에


다시 접속하면 해결된다.



추후 버전에서 해당 버그는 수정될 예정이라고 한다.

Posted by 까망후니
2016. 9. 22. 13:36

1. PI SDK Utility 실행


2. 메세지로그(Message Log) 메뉴 선택


3. 시작시간, 종료시간, 심각도 설정


4. 상단의 메시지 확인 버튼 클릭

Posted by 까망후니
2016. 9. 22. 13:34

1. cmd 실행


2. cd %PIhome%\adm 으로 이동


3. pigetmsg.exe -st [메세지 시작시각] -et [메세지 종료시각] > [output파일명]

   ex) pigetmsg.exe -st *-8h -et * > logfile.txt


이렇게 하면 


%PIhome%\adm 폴더에  logfile이 생성됨.





Posted by 까망후니
2016. 7. 21. 10:35

opc_errors.doc

OPC Error Code 정리된 파일입니다.


이 문서를 어디서 받았는지 출처는 모르겠습니다.


문제가 된다면 삭제 하겠습니다.



Posted by 까망후니
2016. 7. 21. 10:29

Windows 서비스를 등록하기 위해서는 sc.exe 파일(주로 C:\Windows\System32 에 있다.)을 이용한다.


Command 창으로 sc파일이 있는 경로로 이동한 뒤에 다음의 명령어를 이용한다.


등록 : sc create "서비스이름" binpath= "서비스 동작 파일 위치" start= auto depend= "종속해야 하는 서비스명"


삭제 : sc delete "서비스이름"


참고로 binpath나 다른 속성을 입력할때, = 다음에 꼭 한칸 띄어야 한다. 안띄면 에러 발생함.



Posted by 까망후니
2016. 7. 18. 09:05

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp


해당 경로에 실행할 프로그램의 실행파일 혹은 바로가기 파일을 넣으면 된다.

Posted by 까망후니
2016. 7. 15. 14:05

아래의 사이트에서 공짜로 가능하다.

단 파일의 용량이 크면 안된다.


http://convertico.com/

Posted by 까망후니
2016. 7. 8. 14:16

쓰레드를 처음 쓰는 분들을 위한 예제 코드 입니다.


참조만 하세요..ㅎㅎ..




using System.Threading;



//---------------------------------------------------------------------------------------



public class Worker

    {

        private volatile bool _shouldStop;



        public void DoWork()

        {

            while (!_shouldStop)

            {

                Console.WriteLine("worker thread: start..." + DateTime.Now.ToString());


                try

                {

                    if (_shouldStop == true) break;

                  

//여기에 내가 돌리고 싶은 코드를 ~~~


                    

                }

                catch (Exception ex)

                {

                    Console.WriteLine(ex.ToString());

                }


                Thread.Sleep(1000);


            }

            Console.WriteLine("worker thread: terminating gracefully.");


            _shouldStop = false;

        }




        public void RequestStop()

        {

            _shouldStop = true;

        }

    }

//---------------------------------------------------------------------------------------


 private Worker worker = new Worker();

 private Thread workerThread;



 private void button1_Click(object sender, EventArgs e)

        {

            workerThread = new Thread(worker.DoWork);

            workerThread.Start();

            Console.WriteLine("Split Thread: Starting worker thread...");

        }


        private void button2_Click(object sender, EventArgs e)

        {

            try

            {

                worker.RequestStop();

                workerThread.Join();


            }

            catch (Exception ex)

            {

                System.Console.WriteLine(ex.ToString());               

            }           

        }




'언어 > C#' 카테고리의 다른 글

C# 한글 인코딩  (0) 2017.06.18
[ini] ini파일 읽기 쓰기 기본 코드  (0) 2017.02.14
[C#] 걸린 시간 체크  (0) 2016.06.08
[C#] ListView item 삭제  (0) 2016.03.22
[C#] ListView 에 Item 추가  (0) 2016.03.22
Posted by 까망후니
2016. 6. 27. 02:40

http://www.server-world.info/en/note?os=CentOS_7&p=tomcat8


개인적으로 이 사이트가 가장 잘 정리되어 있는것 같다.

Posted by 까망후니
2016. 6. 21. 14:38

[참고] : https://techsupport.osisoft.com/Troubleshooting/KB/KB01143



우선 PI OLEDB Enterprise와 OLEDB Provider의 두가지 방법이 있다.


PI OLEDB Enterprise는 AF 쪽과 Link 할때 사용하고, PI OLEDB Provider는 PI Archive와 Link시 사용한다.


이를 확인 하고 다음 작업을 시작한다.


우선 MS SQL Server Management Studio를 시작한다.



1. 로그인 후에 서버객체 - 연결된 서버 - 공급자  순으로 트리를 열어서 보면 PIOLEDB or PIOLEDBENT가 있다.

   위에 설명한대로 사용할 DB가 AF 또는 PI Archive인지 확인후 각각에 맞게 설정하면 된다.


   설정방법은 다음과 같다.

   (PIOLEDB기준)



   +동적 매개 변수

   +중첩 쿼리

   +Inprocess허용

   +Like 연산자를 지원합니다.


   위의 4가지를 추가 한 후에 확인 버튼을 누릅니다.


==============================================================================


2. 서버객체 - 연결된 서버에서 우클릭을 한 후에 새 연결된 서버를 클릭하여 새로운 연결 정보를 추가합니다.

   st-widget-{image: 3_New Linked Server.png}


   다음의 화면에서 항목에 알맞게 입력합니다.

   

  [일반]

  st-widget-{image: 4_Linked Server General.png}


 - 연결된 서버(Linked server) :  연결정보 서버 이름 입니다. 사용할 Link이름을 알맞게 적어주시면 됩니다.

                                         단순한 이름이므로 직관적인 이름을 사용하면 됩니다.(ex. test)

 - 서버유형 : 기타 데이터 원본 선택(Other data source)

 - 공급자(Provider) : 접속 항목(AF - PI OLEDB Enterprise, PI Archive - PI OLE DB Provider)을 기입합니다.

 - 제품이름(Product name) : 접속 항목(AF - PIOLEDBENT, PI Archive - Provider)을 기입합니다.

 - 데이터 원본(Data source) : 접속할 서버의 IP를 입력합니다.

 - 공급자 문자열 : Integrated Security=SSPI 입력

 - 카탈로그(Catalog) : 접속 항목(AF - SYSTEM, PI Archive - piarchive)을 기입합니다.


 [보안]

 

-추가버튼 클릭

 ->로컬로그인(SQL 설치 컴퓨터 로그인)

 ->가장에 체크


-로그인의 현재 보안 컨텍스트를 사용하여 연결체크


[서버옵션]

-데이터 정렬 호환 : True

-연결 제한 시간 : 30

-쿼리 제한 시간 : 600



이 상태에서 확인 누르면 됩니다.


단 이때, SQL설치 컴퓨터 로그인 정보는 PI에 인증(Trust)이 되어야만 합니다.



Posted by 까망후니