dev 31

PowerBuilder 에서 SVN 을 이용한 버전 관리

1. SVN 서버 준비 https://subversion.apache.org/packages.html Apache Subversion Binary Packages Apache Subversion Binary Packages The Apache Subversion project does not officially endorse or maintain any binary packages of the Subversion software. However, volunteers have created binary packages for different distributions and platforms, and as a con subversion.apache.org 수많은 SVN 서버가 있지만, 저는 CollabNe..

dev/powerbuilder 2022.03.24

나의 첫번째 Python 프로그램

파일을 읽어 한글 추출하기 갑작스러운 오더에 이걸 어떻게 처리할까 고민하자마자 떠오른건 요즘 출퇴근 시간마다 공부했던 파이썬 이면 다른 언어보다 매우 간단하게 만들수 있을것 같다는 생각이 들더군요. "주문 : MessageBox 가 포함된 모든 구문을 찾아 한글로 하드코딩 되어있는 부분을 모두 추출해 주세요.(추후 다국어 버전 지원을 위함)" 우선 파워빌더의 검색기능으로 어렵지 않게 MessageBox가 포함된 구문을 찾아서 msg.txt 라는 파일로 저장하고, 지난 3일동안 출퇴근길에서 갈고닦은 실력으로 한번 코딩해봤습니다. import re f = open("D:/msg.txt", 'r', encoding='UTF8') lines = f.readlines() for line in lines: line..

dev/python 2019.03.28

파워빌더에서 Git 으로 버전관리

파워빌더에서의 버전관리(version control, revision control), 소스 코드 관리(source code management, SCM)는 정말 너무 불편하고, 번거롭기만 했었습니다. 지금까지 저의 경험을 정리해보면, 1. 윈도우 공유폴더로 공유 : 직원들과 의사소통으로 형상관리, 뷁! 2. 자체 개발한 버전관리 시스템을 이용 : 각각의 유저들이 Lock을 걸고 사용하는 방식인데, 그나마 가장 편리했네요. 3. 서브버전(Subversion) : 추가 확장(PBSCC Proxy)와 함께 이용했는데 많이 불안합니다. 4. 파워빌더 자체 내장(PB Native) : 위의 2번 다음으로 유용하지만, 아주 기초적인 Lock 방식 정도만 사용가능한 수준 이런 방법등을 사용해보니, 그나마 2번의 경..

dev/powerbuilder 2019.03.27

Row changed between retrieve and update 오류

Row changed between retrieve and update 이와같은 오류가 발생하는 이유는 여러가지가 있겠지만, 특히 dw의 Specify Update Properties와 밀접한 관계가 있고 대부분의 경우는 dw 컬럼의 data type의 길이와 db의 컬럼의 datatype의 길이가 다르기 때문일 가능성이 크다. 위의 화면을 보면 AF0502D Table이 Update/Delete가 발생하면 Updateable Columns의 컬럼들을 가지고 SQL의 Where 조건을 만들어주는데 remark 컬럼이 db의 varchar2(200)보다 작게 60으로 잡혀 있었다. 2018-12-17어디선가 DataWindows의 Table을 Delete 하고,해당 Table을 Update 하면 이런 문제..

dev/powerbuilder 2015.08.25

dw, grid <-> tabular 변환

1. 변경을 원하는 dw object에서 마우스 오른쪽버튼을 누르고 나오는 팝업메뉴에서 Edit Source를 선택 123456release 10;datawindow(units=0 timer_interval=0 color=1073741824 processing=0 HTMLDW=no print.printername="" print.documentname="" print.orientation = 0 print.margin.left = 110 print.margin.right = 110 print.margin.top = 96 print.margin.bottom = 96 print.paper.source = 0 print.paper.size = 0 print.canusedefaultprinter=yes prin..

dev/powerbuilder 2015.08.13

Column 2 has an invalid name and/or length

젠장, 이 문제 때문에 얼마나 많은 시간을 허비했는지 모르겠다. Column 2 has an invalid name and/or length 문제가 되는 서비스를 찾아서 시작유형을 변경해주는 것만으로 손쉽게 해결된다. 2013.03.29 추가Image Protect Service 서비스 뿐만 아니라 Team Viewer 8 때문에 동일한 문제가 발생하였다. 서비스를 하나하나 중지하면서 찾아보는게 좋을것 같다.

dev/powerbuilder 2013.03.29