2012년 6월 15일 금요일

[PowerBuilder] Data Windows to HTML ( save Excel)

String ls_HTML, ls_FileName, ls_Modify, ls_Named, ls_TmpFile
Integer li_FileNumber, li_Return
Long ll_Location
// Don't proceed if there is no data object loaded in the DW
If (dw_1.dataobject = "") Then Return -1
// Generate the HTML
ls_Modify += "DataWindow.HTMLTable.Border=1  "
If Trim(ls_Modify) <> "" Then
 dw_1.Modify(ls_Modify)
End If

ls_HTML = dw_1.Object.DataWindow.Data.HTMLTable
If IsNull(ls_HTML) Or Len(ls_HTML) <= 1 Then
 MessageBox ("Error", "Error generating HTML table.", Exclamation!)
 Return -1
End If
OLEObject EXCEL
EXCEL = CREATE OLEObject
EXCEL.ConnectToNewObject("Excel.Application")
// 저장 위치
li_Return = GetFileSaveName( "Save File", ls_FileName, ls_Named, "xls" , "All Files (*.*),*.*" )
IF li_Return <> 1 THEN
 MessageBox("확인", "저장할 곳을 선택하십시오.")
 Return -1
END IF
ls_TmpFile = ls_FileName + ".htm"
IF FileExists(ls_TmpFile) THEN FileDelete(ls_TmpFile)
IF FileExists(ls_FileName) THEN FileDelete(ls_FileName)
li_FileNumber = FileOpen(ls_TmpFile, LineMode!, Write!, LockReadWrite!, Append!, EncodingUTF8! )
If (li_FileNumber >= 0) Then
 DO WHILE LenA(ls_HTML) > 10240
  ll_Location = PosA(ls_HTML, '<TR>') + 3
  FileWrite(li_FileNumber, LeftA(ls_HTML, ll_Location))
  ls_HTML = MidA(ls_HTML, ll_Location + 1)
 LOOP

 FileWrite(li_FileNumber, ls_HTML)
 FileClose(li_FileNumber)
Else // File open error
 MessageBox ("FileOpen Error", "Could not open file: " + ls_FileName + " (" + String( li_FileNumber ) + ")")
End If
EXCEL.WorkBooks.Open(ls_TmpFile)
EXCEL.WorkBooks(1).SaveAs(ls_FileName)
EXCEL.WorkBooks(1).Saved = True
EXCEL.Application.Quit
EXCEL.DisConnectObject()
Destroy EXCEL
FileDelete(ls_TmpFile)
Messagebox("완료", "파일이 저장되었습니다.")
Return 1

2012년 6월 13일 수요일

[PowerBuilder] DataWindows to Excel

/*저장하는 칼럼의 셀에 맞혀 셀 위치에 (1:일반),(2:텍스트),(3:날짜) 셋팅

long Array1[], Array2[]
Array1[] = {1,1,2,2,1} //ex = {A,B,C,D,E} 
Array2[] = {1,1,2,2,1} //엑셀에 값이 먼저 들어가기전에 형식지정을 먼저 해주어 ' 0 ' 값이 사라지는것을 막습니다.
 OleObject oleExcel , oleQuery
long li_rc
 //하나의 Excel에 저장하려는 datawindow name 과 .txt파일을 먼저 저장할 경로 지정
dw_1.SaveAs('c:\t1.txt', TEXT!, True) 

//이제 Excel 생성 - .txt로 생성한 파일을 Excel로 이동
oleExcel = Create OleObject
li_rc = oleExcel.ConnectToNewObject("excel.application")
IF li_rc <> 0 THEN
 MessageBox("Information!", "File Conversion Failed!")
 MessageBox('오류!', 'Excel을 구동하면서 오류가 발생했습니다.', stopsign!)
 Destroy oleExcel
 RETURN -1
end if
oleExcel.WorkBooks.Add()
oleExcel.ActiveWorkbook.Sheets.Add.Name = 't1'
oleQuery = oleExcel.ActiveWorkbook.Sheets('t1').QueryTables.Add('TEXT;c:\t1.txt'   , oleExcel.ActiveWorkbook.Sheets('t1').Cells(1,1) )
oleQuery.TextFileColumnDataTypes = Array1
oleQuery.refresh()
oleExcel.Application.Visible = True

[PowerBuilder] Function List

1. 배열(Array)처리 함수  
LowerBound : 지정한 배열의 하위 경계
UpperBound : 지정한 배열의 상위 경계
 
2. Bolb관련 함수  
Blob       : 텍스트 데이터를 Blob 데이터로 변환 또는 복사
BlobEdit   : PB가 지원하는 데이터를 Blob변수로 복사
BlobMid    : Blob 데이터 문자열에서 N번째 문자를 반환 
Len        : 문자열의 길이
 
3. 데이터형 검사 및 변환 함수  
Char       : blob,정수,문자열을 문자로 바꿔서 반환
Dec        : 문자열의 내용을 십진수로 바꿔서 반환
Double     : 문자열의 내용을 Double로 바꿔서 반환
Integer    : 문자열의 내용을 정수로 바꿔서 반환
Long       : 문자열의 내용을 long으로 바꿔서 반환
Real       : 문자열의 내용을 실수로 바꿔서 반환
Date       : 데이터베이스로부터 읽은 DateTime값에서 Date부분만 빼온다.
DateTime   : Date나 Time을 DateTime 값으로 변환한다.
IsDate     : 지정한 문자열이 유효한 Date값을 지녔는지 검사한다.   
IsNull     : 넘어온 인자가 NULL인지 검사한다.
IsNumber   : 지정한 문자열이 숫자값을 지녔는지 검사한다.
IsTime     : 지정한 문자열이 유효한 Time값을 지녔는지 검사한다.
String     : 지정한 형식으로 문자열을 얻는다.
Time       : 데이터베이스로부터 읽은 DateTime값에서 Time부분만 빼온다.
 
4. 날짜,요일,시간 처리 함수  
Day        : 일자를 구한다(1에서 31 사이의 정수)
DayName    : 주간의 요일명을 구한다.
DayNumber  : 주간의 요일을 숫자로 표현한다.(예를들면 일요일은1, 목요일은 5)
DaysAfter  : 지정한 날짜에 n일전,후를 구한다.
Hour       : 주어진 시간의 시 값을 구한다.
Minute     : 주어진 시간의 분 값을 구한다.
Month      : 주어진 날짜의 월 값을 구한다.(1에서 12까지)
Now        : 클라이언트의 시스템 시간을 구한다.
RelativeDate:주어진 날짜를 기준으로 n일 후 날짜를 구한다.
RelativeTime:주어진 시간을 기준으로 n초 후 시간을 구한다.
Second     : 주어진 시간의 초 값을 구한다.
Today      : 클라이언트의 현재 날짜를 구한다.
Year       : 주어진 날짜의 년 값을 구한다.(1000에서 3000년까지임)
 
5.DDE클라이언트 함수  
CloseChannel:OpenChannel함수로 열린 DDE서버 어플리케이션의 채널을 닫는다.
ExecRemote : 서버 어플리케이션에게 명령 실행을 요구한다.
GetDataDDE : 연결된 서버 어플리케이션으로부터 새로운 데이터를 받아온다.
GetDataDDEOrigin:연결된 서버 어플리케이션으로부터 원래의 데이터를 받아온다.
GetRemote  : 서버 어플리케이션에게 데이터를 요구한다.
OpenChannel: DDE서버 어플리케이션을 연다.
RespondRemote:서버에게 명령 또는 데이터가 클라이언트에게 받아들여졌는지를 알려준다.
SetRemote  : 서버 어플리케이션에게 지정한 값을 설정하도록 한다.
StartHotLink:서버 어플리케이션과의 연결을 시작한다.
StopHotLink: 서버 어플리케이션과의 연결을 종료한다.
 
6. DDE서버 함수  
GetCommandDDE: 클라이언트 어플리케이션이 보낸 명령을 구한다.
GetCommandDDEOrigin:어떤 클라이언트 어플리케이션이 명령을 보냈는지 구한다.
GetDataDDE : 클라이언트 어플리케이션이 보낸 데이터를 구한다.
GetDataDDEOrigin:어떤 클라이언트 어플리케이션이 데이터를 보냈는지 구한다.
RespondRemote:클라이언트에게 명령 또는 데이터가 서버에게 받아들여졌는지를 알려준다.
SetDataDDE : 클라이언트 어플리케이션에게 데이터를 보낸다.
StartServerDDE:파워빌더를 서버로 동작하게 한다.
StopServerDDE:파워빌더가 서버로 동작하는 것을 중지한다.
 
7. 파일처리 함수  
FileClose  : 파일 닫기
FileDelete : 파일 삭제
FileExists : 파일 존재 유/무
FileLength : 파일 길이
FileOpen   : 파일 열기
FileRead   : 파일 읽기
FileSeek   : 파일 내 위치 이동
FileWrite  : 파일에 쓰기
GetFileOpenName:파일 열기 공통 다이얼로그 열기
GetFileSaveName:파일 저장 공통 다이얼로그 열기
 
8. 라이브러리 함수  
LibraryCreate:라이브러리 생성
LibraryDelete:라이브러리 삭제
LibrarDirectory:pb라이브러리 파일의 모든 오브젝트의 리스트를 구한다.
LibraryExport:라이브러리 파일의 모든 오브젝트를 Export한다.
Library Import:지정한 라이브러리 파일에서 오브젝트를 Import한다.
 
9.MAPI함수  
mailAddress         :메일 메세지에 주소를 주거나 주소 리스트를 보여준다.
mailDELETEMessage   :메일 메시지를 지운다.
mailGetMessages     :메지시 id를 얻어온다.
mailHandle          :내부 메일 시스템 핸들을 얻어온다.
mailLogOff          :메세징 시스템과의 세션을 끊는다.
mailLogOn           :메세징 시스템과의 세션을 시작한다.
mailReadMessage     :메일 메시지를 읽는다.
mailRecipientDetails:지정된 수취인의 주소 정보를 보여준다.
mailResolveRecipient:불분명한 수취인 명을 결정한다.
mailSaveMessage     :사용자 수신함에 새로운 메시지를 생성하거나 기존에 있는 메시지를 대체한다.
mailSend            :메일 메시지를 보낸다.
 
10. 수치 처리 함수  
Abs        : 수치의 절대값을 얻는다.
Ceiling    : 지정한 수보다 크거나 같은 최소 정수를 구한다.
Cos        : 주어진 각도의 코사인 값을 구한다.
Exp        : e를 Number만큼 거듭제곱한 값을 구한다.(e=2.71828182845904)
Fact       : 계승값을 구한다. Number의 계승값은 1*2*3*...* Number이다.
Int        : 소수점 이하를 버리고 가장 가까운 정수로 변환한다.
Log        : 지정 숫자의 자연로그값을 구한다.
LogTen     : 지정한 숫자에 대해 밑이 10인 로그값을 구한다.
Max        : 두 수 중 큰 수를 구한다.
Min        : 두 수 중 작은 수를 구한다.
Mod        : 두 수를 나눈 나머지를 구한다.
Pi         : 3.14159265358979를 구한다.
Rand       : 난수를 구한다.
Randomize  : 난수 발생기를 초기화한다.
Round      : 숫자를 지정한 자릿수로 반올림한다.
Sign       : 숫자의 부호를 결정한다. Number가 양수이면 1을 표시해주고 0이면 0, 
음수이면 -1을 표시한다.
Sin        : 주어진 각도의 사인 값을 구한다.
Sqrt       : 양의 제곱근을 구한다.
Tan        : 주어진 각도의 탄젠트 값을 구한다.
Truncate   : 숫자의 소수점 이하를 버리고 정수로 변환한다.

11. 출력(Print)함수  
Print      : 현재 글꼴로 문자열을 인쇄한다.
PrintBitmap: 지정한 인쇄공간에 비트맵 이미지를 인쇄한다.
PrintCancel: 인쇄를 취소한다.
PrintClose : 현재 페이지를 프린터에 보내고 인쇄를 멈춘다.
PrintDefineFont:인쇄작업시 폰트를 정의한다. 파워빌더는 각각의 인쇄 작업에 대해 8가지 폰트를 제공한다.
PrintLine  : 지정한 위치에 지정한 굵기로 타원을 그린다.
PrintOpen  : 현재 페이지를 프린터에 보내고 새로운 페이지를 셋한다.
PrintOval  : 지정한 위치에 지정한 굵기로 타원을 그린다.
PrintPage  : 지정한 위치에 지정한 굵기로 둥근 모서리의 사각형을 그린다.
PrintRect  : 지정한 위치에 지정한 굵기로 사각형을 그린다.
PrintRouneRect:지정한 위치에 지정한 굵기로 둥근 모서리의 사각형을 그린다.
PrintSend  :지정한 문자열을 프린터에게 보낸다.
PrintSetFont:현재 인쇄 작업에 대한 글꼴을 지정한다.
PrintSetSpacing:라인간 너비를 지정한다.
PrintSetup : 프린터 설정 다이얼로그 박스를 부른다.
PrintText  : 지정한 위치에 지정한 문자를 인쇄한다.
PrintWidth : 현재 글꼴에서 지정된 문자열의 너비를 구한다.
PrintX     : 커서의 X좌표를 구한다.
PtintY     : 커서의 Y좌표를 구한다.

12. 문자열 처리 함수  
Asc        : 문자열의 첫번째 문자의 ASCII값을 구한다.
Char       : 주어진 ASCII값에 해당하는 문자를 구한다.
Fill       : 지정한 문자를 반복시켜서 문자열을 만든다.
Left       : 문자열의 시작부터 지정한 수의 문자를 읽어온다.
LeftTrim   : 문자열의 시작에 있는 공백을 없앤다.
Len        : 문자열의 길이를 구한다.
Lower      : 주어진 문자열 내의 대문자를 소문자로 고친다.
Mid        : 주어진 문자열에서 시작 위치와 끝 위치를 지정해 문자열의
             일정 부분만을 구한다.
Pos        : 다른 문자열에서 주어진 문자열의 위치를 찾는다.
Replace    : 문자열의 일부를 다른 문자열로 바꾼다.
Right      : 문자열의 끝에서 주어진 수의 문자를 얻어온다.
RightTrim  : 문자열의 끝에 있는 공백을 없앤다.
Space      : 지정한 길이로 공백 문자열을 얻는다.
Trim       : 문자열의 시작과 끝의 공백을 없앤다.
Upper      : 지정한 문자열 내의 소문자를 대문자로 고친다.

13. 시스템 및 환경 함수(System and Environment)  
Clipboard  : 윈도우의 클립보드의 내용을 얻는다.
GetApplication:현재 어플리케이션의 핸들을 구한다.
CommandParm: 어플리케이션 실행시 지정된 파라미터가 있을 경우 그값을 구한다.
DoScript   : 애플 스크립트(AppleScript)를 실행한다.(매킨토시 버전에만 해당)
GetEnvironment:시스템의 운영체제와 프로세서 등과 같은 정보를 얻는다.
Handle     : Window SDK함수를 부르기 위해 사용한다.
Post       : 지정한 윈도우에 대한 메시지를 메시지 큐에 마지막에 삽입한다.
ProfileInt : 지정한 프로파일에서 숫자값을 얻어온다.
ProgileString:지정한 프로파일에서 문자열을 얻어온다.
Restart    : 모든 스크립트의 실행을 중지하고, 모든 윈도우를 닫으며 데이터베이스에 Commit한후 연결을 끊고 다시 어플리케이션을 실행시킨다.
Run        : 지정한 어플리케이션을 실행시킨다.
Send       : 지정한 윈도우에 메시지를 순차적으로 보낸다.
SetProfileString:지정한 프로파일 값을 저장한다. 
ShowHelp   : 윈도우 3.x에 있는 도움말(Help)파일을 읽어 파워빌더 어플리케이션에서 사용할 수 있다.
SignalError: 어플리케이션 레벨에서의 시스템 에러를 발생한다.
Yield      : 반복문 안에서 다른 오브젝트나 어플리케이션의 메시지가 발생 됐는지를 체크할수 있게 한다.

14. 시간처리 함수  
CPU        : 현재 실행중인 PB어플리케이션 프로그램의 시작 시간부터 현재까지의 CPU시간을 구해준다.
Idle       : 사용자가 아무런 입력이 없이 지정한 시간이 흐르면 Idle이벤트 발생시킨다.
Timer      : 지정한 윈도우에 일정한 간격의 타이머를 지정하여 Timer이벤트를 발생시킨다.


15. 그밖의 함수  
Beep         : 정해진 시간(초단위)동안 경고음을 발생한다.
DBHandle     : DBMS의 핸들을 반환한다.
IsValid      : 지정한 윈도우가 열려있는지 검사한다.
KeyDown      : 사용자가 특정한 키를 눌렀는가 검사한다.
MessageBox   : 메시지 박스를 출력한다.
PixelsToUnits: 픽셀(Pixel)을 PB의 Unit로 바꾼다.
RGB          : 특정 색상을 표현하는 Long형 값을 반환한다.
SetNull      : 변수의 유형에 상관없이 변수를 Null로 지정한다.
SetPointer   : 마우스 포인터를 지정한 모양으로 바꾼다.
TypeOf       : 오브젝트의 형을 결정한다. 예를들면 CheckBox, Picture, RadioButton
등이다.
UnitsToPixels: PB의 Unit를 픽셀(Pixel)로 바꾼다.

1. UpperBound(배열명,{배열차원}) : 가끔 사용 
   (1) 개념 : 배열의 가장높은 경계값을 알아낸다. 
       Option으로 배열의 차원을 지정할 수 있으며 Default 차원은 1차원이다.
   (2) Return : integer(배열의 가장높은 경계값)
   (3) 예제 
       가) 
       integer li_number[7] , li_return 
       li_return = UpperBound(li_number) // li_return 은 7이 된다. 
       나) 
       string ls_name[5,6] integer li_return 
       li_return = UpperBound(ls_name,1) // li_return 은 5가 된다 
       li_return = UpperBound(ls_name,2) // li_return 은 6이 된다
   (4) 메모 : 가변길이 선언 배열에서 ( ls_text[] ) 
   위의 함수를 사용하여 0이 Return되면 배열이 아직 현 메모리에 적재되지 않았음을 의미한다.
   (5) 상대함수 : LowerBound()

2. IsDate(string) : 자주 사용 
   (1) 개념 : 특정한 String이 정확한 Date인지를 확인한다.
   (2) Return : Boolean ( Date가 맞으면 True 아니면 False이다. )
   (3) 예제 boolean lb_check 
       lb_check = IsDate("1996/05/22") // lb_check 는 True이다 
       lb_check = IsDate("1996/00/22") // lb_check 는 False 이다
   (4) 메모 : 특정한 String등을 Date로 변환시키기 직전에 많이 사용한다.
   (5) 유사함수 : Isnull() , Isnumber() , Istime() , Isvalid()

3. Date(datetime) , : 자주사용 Date(string) , Date(year,month,day) 
   (1) 개념 : datetime , string , 년월일의 integer값을 Date 변수타입으로 변환한다
   (2) Return : Date ( Valid 한 Date가 아닐때는 1900-01-01을 Return한다 )
   (3) 예제 datetime ldt_this date ld_new 
       ld_new = Date(ldt_this) 
       IF ld_new = Date("1900-01-01") THEN 
          Messagebox("ERROR",'정확한 일자가 아닙니다 !!') 
          return 
       END IF 
       ld_new = Date("1996/08/15") ld_new = Date(1999,11,23)
   (4) 유사함수 : DateTime()

4. Control명.ClassName() : 가끔사용 ClassName(변수명) 
   (1) 개념 : 특정한 Object의 Class명을 String으로 알아낸다.
   (2) Return : String ( Error 발생시에는 empty string "" 이 반환된다)
   (3) 예제 
       가)
       string ls_name 
       ls_name = Parent.ClassName() 
       IF ls_name = "w_insa001u" THEN 
          sle_1.text = ls_name 
       END IF
       // 어떤 Object의 Dragdrop Event 에서 
       string ls_name dragobject ldr_what 
       ldr_what = DraggedObject() ls_name = ldr_what.ClassName() 
       IF ls_name = 'em_delete' THEN 
          ldr_what.Drag(end!) Messagebox("Drag Object",'Drag된 Object 는 '& + ls_name + '입니다') 
       END IF
       나) 
       long ll_qty string ls_class 
       ls_class = ClassName(ll_qty) // ls_class 는 'long' 을 받아온다 
       ls_class = ClassName(this) // ls_class 는 현 Object 의 Class 명칭을 받아온다
5. Object명.PostEvent(event명) : 자주사용 
   (1) 개념 : Script가 쓰여진 현 Event가 끝난뒤 특정 Object의 Event를 수행하게 한다. 
       위의 function은 script가 쓰여진 위치에 관계없음으로 그 이후에 어떤 scrip가 있다면 
       그것을 모두 수행한후에 실행된다.
   (2) Return : Boolean (성공하면 true , event가 없거나 script가 없으면 false)
   (3) 예제 
       cb_close.PostEvent(clicked!) // object에 기본적으로 있는 event일때 
       cb_close.PostEvent("ue_keydown") // User가 정의한 event일때
 
6. Object명.TriggerEvent(event명) : 매우 자주사용 
   (1) 개념 : 현 Event에서 어떤 특정Object의 특정Event를 즉각적 수행하고 돌아온다. 
       Script가 쓰여진 위치가 중요하다
   (2) Return : Boolean (성공하면 true , event가 없거나 script가 없으면 false)
   (3) 예제 
       cb_check.TriggerEvent(clicked!) // object에 기본적으로 있는 event일때 
       cb_check.TriggerEvent("ue_check") // User가 정의한 event일때
   (4) 메모 : 어떤 Event의 Script를 수행한다는 면에서는 Postevent와 Triggerevent는 동일하며 
       두 이벤트 중 어떤것을 써야할지의 선택기준은 현재의 Event가 수행되고 난뒤 
       어떤 Event를 이어서 수행시키느냐 (Postevent) , 즉각적으로 어떤 Event를
       수행하느냐 (Triggerevent) 의 차이이다.

2012년 6월 12일 화요일

[PowerBuilder] OLE Excel Format Type

oleExcel.ActiveWorkbook.saveas("엑셀저장명.xls", 포맷형식)
포맷형식



이름설명
xlAddIn18Microsoft Office Excel 추가 기능
xlAddIn818Excel 2007 추가 기능
xlCSV6CSV
xlCSVMac22Macintosh CSV
xlCSVMSDOS24MSDOS CSV
xlCSVWindows23Windows CSV
xlCurrentPlatformText-4158현재 플랫폼 텍스트
xlDBF27DBF2
xlDBF38DBF3
xlDBF411DBF4
xlDIF9DIF
xlExcel1250Excel 12
xlExcel216Excel 2
xlExcel2FarEast27Excel2 FarEast
xlExcel329Excel3
xlExcel433Excel4
xlExcel4Workbook35Excel4 통합 문서
xlExcel539Excel5
xlExcel739Excel7
xlExcel856Excel8
xlExcel979543Excel9795
xlHtml44HTML 형식
xlIntlAddIn26국제 형식 추가 기능
xlIntlMacro25국제 형식 매크로
xlOpenXMLAddIn55Open XML 추가 기능
xlOpenXMLTemplate54Open XML 서식 파일
xlOpenXMLTemplateMacroEnabled53Open XML 매크로 사용 서식 파일
xlOpenXMLWorkbook51Open XML 통합 문서
xlOpenXMLWorkbookMacroEnabled52Open XML 매크로 사용 통합 문서
xlSYLK2SYLK
xlTemplate17서식 파일
xlTemplate817서식 파일 8
xlTextMac19Macintosh 텍스트
xlTextMSDOS21MSDOS 텍스트
xlTextPrinter36프린터 텍스트
xlTextWindows20Windows 텍스트
xlUnicodeText42유니코드 텍스트
xlWebArchive45웹 보관
xlWJ2WD114WJ2WD1
xlWJ340WJ3
xlWJ3FJ341WJ3FJ3
xlWK15WK1
xlWK1ALL31WK1ALL
xlWK1FMT30WK1FMT
xlWK315WK3
xlWK3FM332WK3FM3
xlWK438WK4
xlWKS4워크시트
xlWorkbookDefault51통합 문서 기본
xlWorkbookNormal-4143통합 문서 일반
xlWorks2FarEast28Works2 FarEast
xlWQ134WQ1
xlXMLSpreadsheet46XML 스프레드시트

2012년 6월 8일 금요일

[책추천 #11] 3차 산업혁명 - 제러미 리프킨

 
드라마가 시청률이 저조하면 개편시기에 가장 먼저 없어지게 마련인데..
그래도 덧글은 남기지 않지만 관심있게 보신다는 어느 한분을 위해서라도 좀 나겨야 겠다 싶어 11번째 추천 책을 올립니다. 현재 이책은 저도 아직 끝까지 읽지 못한 책입니다만 추천드립니다. 기존 제러미 리프킨의 책들을 읽으였던 분들이라면 총체적 정리가 되어 있는 책으로 이해 하시면 됩니다.

저 개인의 사회학적/정신적 멘토로 생각하는 사람이기도 합니다. 시간이 허락하신다면 이책을 읽기 전에 "소유의 종말", "노동의 종말" 이란 책을 우선 추천을 드립니다.

이 책에서 주로 다루는 내용은 과거 화석연료가 풍부했던 산업화 시대, 대량생산의 시대가 이제는 에너지 고갈로 대체 에너지 생산쪽으로 변해가면서 나타나는 정치, 권력, 사회, 문화 등 사회 전반적인 변화에 대해서 다루고 있습니다.

기존의 산업회 시대는 대량의 생산으로 대량의 소비를 만들어 내며 성장해왔다면 앞으로의 사회 및 시장은 대량에서 소량으로 대량의 소비(소비자 의사결정의 기준으로 평균)에서 소량의 소비 ( 개인화 된 소비 )로 변해 갈 것이라는 것입니다.산업화 시대에서는 각나라 또는 기업이 많이 팔고 많이 돈을 벌면 그만이었지만 앞으로는 국가간 또는 기업간의 협력이 중요한 트랜드로 자리잡아 가고 있고 조직 운영에 있어서도 협력(협업)이 중요한 가치로 대두되고 있습니다.

이 책을 통해 새로운 3차 산업혁명시대에 국가, 시장, 시민 사회가 어떻게 준비하고 대처해야 하는지 외식산업에서의 녹색성장은 어떤 의미가 있는것인지 생각하고 어떤 정책을 준비해야 하는지 생각해 보는것도 좋을것 같습니다. 또한 개인이 앞으로의 미래의 시대에 준비해야 할 역량과 지식은 무엇인지 함께 고민해 보시길 바랍니다.


* 외부 주요 서평 및 본문 내용
** 추천 서평 중

석유와 다른 화석 연료를 동력으로 한 산업혁명은 위험천만한 대단원을 향해 급격히 추락하고 있다.
가스와 식량 가격은 오르고, 실업률은 여전히 높고, 부동산 경기는 최악이고, 개인과 정부의 부채는 급상승하고, 그 회복은 한없이 더디다.

세계 경제가 역사상 두번째 위기 국면에 부딪히면서, 인류는 지속 가능한 경제 계획을간절히 원하게 되었다. 세계적인 석학 레러미 리프킨은 이 책에서 인터넷 기술과 재생에너지가 합쳐져 강력한 "3차 산업혁명"이 발생하는 과정을 설명한다.

그는 수억명의 사람들이 집과 사무실, 공장에서 스스로 녹색에너지를 생산하고, "에너지 인터넷"안에서 서로 정보를 공유하는(마치우리가 지금 정보를 온라인으로 창조하고 공유하는 거처럼) 청사진을 펴쳐 보인다.

그는 3차 산업혁명을 통해 수천개의 비즈니스와 수백만개의 일자리가 창출되고, 수평적관계가 정립되고, 경제 사회 문화 교육 전반에 변화의 바람이 불어올 것이라고 말한다. 지금 준비하지 않으면 안되는 이유이다.


본문 59페이지
3차 산업혁명의 다섯가지 요소는 다음과 같다.

1) 재생 가능 에너지로 전환한다. 
2) 모든 대륙의 건물을 현장에서 재생 가능 에너지를 생산할 수 있는 미니 발전소로 변형한다. 
3) 모든 건물과 인프라 전체에 수소 저장 기술 및 여타의 저장 기술을 보급하여 불규칙적으로 생성되는 에너지를 보존한다. 
4) 인터넷 기술을 활용하여 모든 대륙의 동력 그리드를 인터넷과 동일한 원리로 작동하는 에너지 공유 인터그리드로 전환한다. 
(수백만개의 빌딩이 소량의 에너지를 새성하여 잉여 에너지를 그리드로 되팔아 대륙내 이웃들이 사용할 수도 있다) 
5) 교통수단을 전원 연결 및 연료전지 차량으로 교체하고 대륙별 양방향 스마트 동력 그리드상에서 전기를 사고 팔 수 있게 한다.

아직 저의 지적수준이 하수인 관계로 1번 ~ 5번 까지의 현실적 당면과제를 이해하기엔 좀더 많은 공부와 사회 경제적 전만의 깊은 이해가 필요 합니다만 국가의 굵직한 정책들을 보더라도 그린에너지 정책과 재생에너지 정책의 큰틀에서 아마도 변화하는 모습이 보이긴 합니다. 썬앳푸드의 비전에도 "Green" 있는 것 또한 마찬가지가 아닌가 하는 생각이 듭니다.

[책추천 #10] 슬로우 - 플로리안 오피츠

 
이번에 추천드릴 책은 슬로우 입니다.
저는 책이 좋습니다. 또한 책을 사서 직접 소유하는 것을 좋아 합니다.
여러가지 이유가 있지만 그 중에서도 책은 그때의 사고방식과 정신적 상태에 따라 다른 감동과 느낌을 주기 때문에 책을 소유하는 욕심이 있습니다. 지나치게 많은 정보와 시간이 부족하다고 느끼는 지금 저에게 들어 온 책입니다.

책을 읽으면서 느끼는 공감과 충격은 이루 말할 수가 없습니다. 세상은 급변하게 변하고 있고 빨라지고 있으며 업무나 개인의 생활의 모든것에 무수한 정보습득과정이 습관처럼 이뤄지고 있습니다. 언제든지 메일이나 업무를 볼 수 있고 언제든지 휴대폰으로 전화도 할수 있고 그런데 우리의 삶(개인이든 조직이든)은 그렇게 편해졌다 좋아졌다 말할 수 없을 만큼.. 바쁘고 정신이 없습니다. 그래서 우리는 항상 시간이 부족하다 말합니다.

주위에서 가장 많이 듣는 말이 바로 " 아~~ 정말 시간이 없어 ", " 정말 바빠서 뭘 하지 못하겠어 " 이런 말들입니다. 이러한 생각들을 고민하거나 이러한 자신의 모습이 조금은 삶에 대한 본질에서 벗어 났다고 생각이 잠시라도 든다면 이 책을 적극적으로 추천드립니다. 삶에 대한 답은 없습니다. 각자의 가치관에 따라 자신의 삶의 행복 지수를 만들어 내곤 합니다. 과연 여러분 스스로의 행복지수느 몇점인가요?

* 책 목차
1부 우리는 왜 불안하게 쫓기며 살까?
“우선순위를 정하면 시간을 절약할 수 있나요?”-시간 관리 제왕과의 만남
“인생은 선택, 한계를 인정하고 집중하세요”-탈진증후군 전문가와의 상담
“휴대전화와 인터넷을 끊고 6개월간 살아보니……”-디지털 세계와 단절한 기자
“멀티태스킹이 답은 아니랍니다”-시간 연구자를 찾아서

2부 속도와 경쟁에 집착하는 세상
“빠른 자가 느린 자를 잡아먹지요”-세계적 기업 컨설턴트와의 인터뷰
“100만 분의 1초 빠른 뉴스를 전합니다”-로이터 통신 유럽 본부를 가다

3부 행복과 속도 사이, 대안을 찾아서
“왜 알프스의 산장지기가 되려 하느냐고요?”-제도권에서 탈출한 금융 전문가
“컴퓨터가 밥 먹여주는 건 아니잖아요?”-산골 농장의 바츨리 가족
“나는 4,000년 후를 기대합니다”-황무지로 떠난 노스페이스 창업자
“가난과 행복이 공존할 수 있을까요?”-부탄의 국민총행복론
“전 국민이 매달 200만 원씩을 받는다면?”-조건 없는 기본소득

2012년 5월 5일 토요일

[책추천 #9] 빅데이터 비즈니스 - 스즈키 료스케

 
책 제목을 보고 오해할 수 있는 소지가 다분히 있어 사전에 말씀 드립니다. 해당 책은 IT전공 서적이 아닙니다. ^^ 향후 도래하게 되는 비즈니스 모델에 관한 이야기가 있는 경제경영 서적입니다.
 
수도 없이 산제되어 있는 데이터와 정보들을 어떻게 취하고 분석하며 실제로 활용할 것인가에 대한 활용사례와 현재의 상태엥서 가지고 있는 문제점들을 균형있게 설명해주고 있는 책이라고 생각합니다.

[목차]
제1장_빅 데이터 비즈니스란 무엇인가
- 거대한 조류 ‘빅 데이터 비즈니스’
- 빅 데이터란 무엇인가
- IT업계 4강의 거대 데이터 쟁탈전
- 이용사업자.”가 빅 데이터 비즈니스에 착수해야 하는 이유
- 왜 지원사업자는 빅 데이터 비즈니스에 뛰어들었는가
- 빅 데이터 비즈니스를 실현하기 위한 과제
- 빅 데이터 비즈니스의 미래

제2장_빅 데이터 비즈니스의 효용과 그 활용의 예
- 이용사업자의 관점에서 본 빅 데이터 비즈니스의 효용
- ‘실시간성’과 ‘피드백 대상’에 따른 효용의 정리와 해석
- 빅 데이터 활용을 촉진하는 서비스 모델과 비즈니스 모델

제3장_주요 사업자의 전략과 빅 데이터 활용을 지원하는 기술
- 주요 지원사업자의 전략
- 빅 데이터를 ‘취득하고 생성’한다
- 빅 데이터를 ‘축적’한다
- 빅 데이터를 ‘처리하고 분석’한다

제4장_빅 데이터 활용을 저해하는 세 가지 요인
- 빅 데이터 활용에 가장 큰 저해 요인은 인재가 부족한 것
- 무분별하게 이용되는 개인정보와 기밀정보에 대한 과제와 대책
- 부정확한 데이터를 오용하거나 부적절하게 이용하는 데 따르는 과제

제5장_빅 데이터 비즈니스의 미래
- 이용사업자의 관점에서 바라본 빅 데이터 비즈니스의 미래
- 지원사업자의 관점에서 바라본 빅 데이터 비즈니스의 미래

[주요 내용]

미래 경쟁력의 척도, 빅 데이터란 무엇이고 어떻게 활용할 것인가?
 
노무라총합연구소의 컨설턴트가 활발한 강연 활동과 정부기관들의 정책 입안에 기여하면서 쌓은 통찰력을 바탕으로 완성한 책으로, 저자는 빅 데이터 비즈니스가 기업과 개인이 생존을 위해 새롭게 주목해야 할 미래 비즈니스의 형태가 될 것이라고 이야기한다. 저자는 최근 10년 동안 눈부신 발전을 거듭하면서 데이터를 활용할 수 있는 환경으로 재정비된 덕분에 사용할 수 있는 데이터가 많아졌다고 이야기한다. 빅 데이터 정의에서부터 시작해 특징과 빅 데이터를 분석하는 기술적인 방법, 이를 활용하여 새로운 부가가치를 얻고 있는 다양한 기업들의 예시, 빅 데이터 활용을 지원하고자 하는 IT사업자의 최신 동향이나 전략, 그리고 빅 데이터 비즈니스의 가능성, 더 나아가서는 빅 데이터를 축적해가는 과정에서 극복해야 할 여러 가지 상황 등에 대해 상세히 설명한다.

언제 부터 였던가 생각해보니 아르바이트 겸 외부 컨설팅을 의뢰 받고 맥북 프로를 처음 써봤을 때 부터 였던 것 같다. 지금은 거의 대부분의 작업을 맥으로 작업을 하다 보니 윈도우에서만 실행되는 일부 프로그램들 때문과 회사 내부 ERP프로그램이 윈도우 ...