Product name(MATNR) 으로 Product ID(MATID) 가져오기.



          ls_range-sign 'I'.
          ls_range-option 'EQ'.
          ls_range-low ls_product-matid.

          APPEND ls_range TO lt_range.

          CALL FUNCTION '/scmb/mdl_find_by_matnr'
            EXPORTING
              it_matnr_rng lt_range
            IMPORTING
              et_matid     lt_matid.


'SAP > ABAP' 카테고리의 다른 글

Product ID 로 Product name 및 description 가져오기.  (0) 2017.10.18
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

MATID 로 Product name(MATNR) 및 description(MAKTX) 가져오기.


Class : /SCWM/CL_PACKSPEC_ELEMENT

Method : RAAD_MATID


ex) PMAT_GUID : '001CC4C19E6A1EE4B3DC9C7EXXXXX'



CALL METHOD /scwm/cl_packspec_element=>read_matid 

EXPORTING 

  iv_matid       = PMAT_GUID 

IMPORTING 

  ev_matnr      = LV_MATNR 

  ev_mat_text   = LV_MAKTX 

EXCEPTIONS * OTHERS = 2. 




'SAP > ABAP' 카테고리의 다른 글

Product name 으로 Product ID 가져오기  (0) 2017.10.18
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

Devexpress 의 SchedulerControl 을 이용하여 Calendar 제작 하기



▼ 결과 화면


Project 명 : JScheduler



SchedulerControl 을 활용하는 연습을 하기위해 

Google Calendar와 Schedule/Task를 연동할 수 있는 App 을 제작 해 보았습니다.


현재는 간단한 기능 테스트가 목표이기 때문에 Task연동 부분을 하지는 않았고 Schedule(일정) 만 가능합니다만, 언젠가는 Task 도 해볼까 합니다. 언젠가는...


간단히, 초기 셋팅 방법과 주요 method를 살펴 보겠습니다. 

참고로 사용된 주요 소스코드는 첨부되어 있으며 소스의 출처는 : Devexpress Q&A 와 아래 링크의 Google API Guide 입니다.


1. Google 초기 셋팅 및 필요한 라이브러리 

 - https://developers.google.com/google-apps/calendar/quickstart/dotnet

  아래 Quickstart dotnet 버전을 보고 따라 하시면 어렵지 않게 완료 할 수 있습니다.

  간단히 

  -> Google에 Project 생성 후 

  -> C# Winform project 생성

  -> Nuget package 설치


2. Google API Loading



3. Google Schedule loading 후 SchedulerControl이 인식할 수 있도록 Data Conversion

 - 달력의 날짜가 변경되면 해당 기간의 일정 자동 로딩.




4. JScheduler 에서 생성한 Schedule 을 Google로 보내기.




Component를 사용해 보면서 느낀점은 역시나 UI관련 기본적인 부분을 이미 대부분 구현해 놓았기 때문에 데이터 연동 부분만 신경 쓰면 되는게. 저 같은 1인 개발자 나 소규모의 개발집단에 개발 퍼포먼스 향상을 위해 아주 좋은 대안이 될거라는 생각이 듭니다. 물론 비용은 듭니다만, 비용대비 퍼포먼스는 만족할 만 합니다. 


CalendarExporter.cs

CalendarImporter.cs

GoogleCalendarHelper.cs

GoogleCalendarUtils.cs

RecurrencePatternParser.cs

MainForm.cs


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

Windows Note App 만들기  (0) 2017.11.12
C# WebBrowser version 변경  (0) 2016.09.07
CefSharp install  (0) 2016.09.06
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

Bit Enum (Flag)

C#/Grammar 2017. 10. 1. 07:28
Bit 연산을 위한 Enum 을 만들수 있다.



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

C# 에서 사용되는 데이터 타입.  (0) 2017.09.25
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,
Application 실행시 하나의 Machine 에서 하나의 프로세스만 실행하고 싶을경우 
C#의 Mutex 를 사용하여 제어 할 수 있다. 




Test Environments

- OS : Windows 7

- IDE : Visual Studio 2017

- .NET framework 4.5.2


'C# > Tips & Skills' 카테고리의 다른 글

C#에서 DB2 Connection  (0) 2016.09.07
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

C# 에서 사용되는 데이터 타입



아래 테이블의 Short Name 과 .NET Class 타입 모두 사용가능 하다. 

컴파일러는 컴파일시 Short Name 을 .NET Class 로 변환하는 과정을 거치게 된다.




Built-In Data Types

Short Name

.NET Class

Type

Width

Range (bits)

byte

Byte

Unsigned integer

8

0 to 255

sbyte

SByte

Signed integer

8

-128 to 127

int

Int32

Signed integer

32

-2,147,483,648 to 2,147,483,647

uint

UInt32

Unsigned integer

32

0 to 4294967295

short

Int16

Signed integer

16

-32,768 to 32,767

ushort

UInt16

Unsigned integer

16

0 to 65535

long

Int64

Signed integer

64

-9223372036854775808 to 9223372036854775807

ulong

UInt64

Unsigned integer

64

0 to 18446744073709551615

float

Single

Single-precision floating point type

32

-3.402823e38 to 3.402823e38

double

Double

Double-precision floating point type

64

-1.79769313486232e308 to 1.79769313486232e308

char

Char

A single Unicode character

16

Unicode symbols used in text

bool

Boolean

Logical Boolean type

8

True or false

object

Object

Base type of all other types

string

String

A sequence of characters

decimal

Decimal

Precise fractional or integral type that can represent decimal numbers with 29 significant digits

128

±1.0 × 10e−28 to ±7.9 × 10e28


출처 : https://msdn.microsoft.com/en-us/library/ms228360(v=vs.90).aspx


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

Bit Enum (Flag)  (0) 2017.10.01
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

SyntaxHighlighter 를 이용한 highlighting.



2017.09월 현재 해당 website 에서는 더이상 다운로드를 지원하지 않는다.  하지만 Googling 을 해보면 개인 블로그에서 많이 찾을수 있다.



1. 공식 사이트


http://alexgorbatchev.com/SyntaxHighlighter/

https://github.com/syntaxhighlighter/syntaxhighlighter


2. 다운로드





2. 다운로드 받은 Style 과 Script Tistory에 Upload






추가 (scripts 및 styles 하위에 있는 모들 파일) -> 저장





HTML 에 소스 추가





<script type="text/javascript" src="./images/shCore.js"></script>

<script type="text/javascript" src="./images/shLegacy.js"></script>

<script type="text/javascript" src="./images/shBrushBash.js"></script>

<script type="text/javascript" src="./images/shBrushCpp.js"></script>

<script type="text/javascript" src="./images/shBrushCSharp.js"></script>

<script type="text/javascript" src="./images/shBrushCss.js"></script>

<script type="text/javascript" src="./images/shBrushDelphi.js"></script>

<script type="text/javascript" src="./images/shBrushDiff.js"></script>

<script type="text/javascript" src="./images/shBrushGroovy.js"></script>

<script type="text/javascript" src="./images/shBrushJava.js"></script>

<script type="text/javascript" src="./images/shBrushJScript.js"></script>

<script type="text/javascript" src="./images/shBrushPhp.js"></script>

<script type="text/javascript" src="./images/shBrushPlain.js"></script>

<script type="text/javascript" src="./images/shBrushPython.js"></script>

<script type="text/javascript" src="./images/shBrushRuby.js"></script>

<script type="text/javascript" src="./images/shBrushScala.js"></script>

<script type="text/javascript" src="./images/shBrushSql.js"></script>

<script type="text/javascript" src="./images/shBrushVb.js"></script>

<script type="text/javascript" src="./images/shBrushXml.js"></script>

<link type="text/css" rel="stylesheet" href="./images/shCore.css">

<link type="text/css" rel="stylesheet" href="./images/shThemeDefault.css">

<script type="text/javascript">

SyntaxHighlighter.all();

</script>




<body Onload="dp.SyntaxHighlighter.HighlightAll('code');">



3. 테스트 소스코드 작성




HTML 입력창에 아래 코스 추가



<textarea name="code" class="brush:csharp;"> <!-- language type 에 맞게 변경-->


using System;


using Android.App;

using Android.Content;

using Android.Content.PM;

using Android.Runtime;

using Android.Views;

using Android.Widget;

using Android.OS;


namespace Favlish.Droid

{

    [Activity(Label = "Favlish.Droid", Icon = "@drawable/icon", Theme = "@style/MyTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]

    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity

    {

        protected override void OnCreate(Bundle bundle)

        {

            TabLayoutResource = Resource.Layout.Tabbar;

            ToolbarResource = Resource.Layout.Toolbar;


            base.OnCreate(bundle);


            global::Xamarin.Forms.Forms.Init(this, bundle);


            LoadApplication(new App());

        }


        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)

        {

            base.OnActivityResult(requestCode, resultCode, data);

        }

    }

}




</textarea>




미리보기 



소스코드 지원 리스트

http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/

'Interest > Blog' 카테고리의 다른 글

highlight sample  (0) 2017.09.25
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

highlight sample

Interest/Blog 2017. 9. 25. 03:13

'Interest > Blog' 카테고리의 다른 글

TISTORY Source code Highlight  (0) 2017.09.25
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

RTMS 용 DB SQL

Database 2017. 8. 20. 21:10




먼저 Tablespace가 위치할 Directory 생성



      -- 데이터용 테이블스페이스 생성

      CREATE TABLESPACE       TBS_DATA01

                  datafile       'C:\oraclexe\app\oracle\oradata\data01\TBS_DATA01_01.dbf' size 50M REUSE

                  extent management local  autoallocate

                  segment space management auto;

      -- 인덱스용 테이블스페이스 생성

      CREATE TABLESPACE       TBS_IDX01

                  datafile       'C:\oraclexe\app\oracle\oradata\data01\TBS_IDX01_01.dbf' size 50M REUSE

                  extent management local  autoallocate

                  segment space management auto;



      -- 응용프로그램 접속 계정(최소권한) : RTMS_CLIENT

      DROP USER RTMS_USER CASCADE;


CREATE USER RTMS_USER

  IDENTIFIED BY <password>

  DEFAULT TABLESPACE TBS_DATA01

  TEMPORARY TABLESPACE TEMP

  PROFILE DEFAULT

  ACCOUNT UNLOCK;


-- 2 Roles for RTMS_USER 

GRANT CONNECT TO RTMS_USER;

GRANT RESOURCE TO RTMS_USER;

ALTER USER RTMS_USER DEFAULT ROLE NONE;


-- 5 System Privileges for RTMS_USER 

GRANT ALTER SESSION TO RTMS_USER;

GRANT CREATE SESSION TO RTMS_USER;

GRANT CREATE SYNONYM TO RTMS_USER;

GRANT CREATE TABLE TO RTMS_USER;

GRANT UNLIMITED TABLESPACE TO RTMS_USER;


-- 1 Tablespace Quota for RTMS_USER 

ALTER USER RTMS_USER QUOTA UNLIMITED ON TBS_DATA01;


ALTER TABLE RTMS_USER.RTMS_FILE_TRANS_HIST

 DROP PRIMARY KEY CASCADE;


DROP TABLE RTMS_USER.RTMS_FILE_TRANS_HIST CASCADE CONSTRAINTS;


CREATE TABLE RTMS_USER.RTMS_FILE_TRANS_HIST

(

  ID            INTEGER                         NOT NULL,

  IP_ADDR       VARCHAR2(20 BYTE)               NOT NULL,

  PATH_LOC      VARCHAR2(200 BYTE)              NOT NULL,

  FNAME         VARCHAR2(100 BYTE)              NOT NULL,

  FEXT          VARCHAR2(5 BYTE),

  FLENGTH       INTEGER                         NOT NULL,

  PATH_SRV      VARCHAR2(200 BYTE)              NOT NULL,

  AUTO_YN       CHAR(1 BYTE)                    NOT NULL,

  DEL_YN        CHAR(1 BYTE)                    NOT NULL,

  TRANSED_DATE  VARCHAR2(8 BYTE)                NOT NULL,

  TRANSED_TIME  VARCHAR2(6 BYTE)                NOT NULL,

  INS_DATE      VARCHAR2(8 BYTE)                NOT NULL,

  INS_TIME      VARCHAR2(6 BYTE)                NOT NULL,

  UPD_DATE      VARCHAR2(8 BYTE),

  UPD_TIME      VARCHAR2(6 BYTE)

)

TABLESPACE TBS_DATA01

PCTUSED    0

PCTFREE    10

INITRANS   1

MAXTRANS   255

STORAGE    (

            INITIAL          64K

            NEXT             1M

            MINEXTENTS       1

            MAXEXTENTS       UNLIMITED

            PCTINCREASE      0

            BUFFER_POOL      DEFAULT

           )

LOGGING 

NOCOMPRESS 

NOCACHE

MONITORING;



CREATE INDEX RTMS_USER.IDX_TRNAS_HIST_FNAME ON RTMS_USER.RTMS_FILE_TRANS_HIST

(FNAME)

LOGGING

TABLESPACE TBS_DATA01

PCTFREE    10

INITRANS   2

MAXTRANS   255

STORAGE    (

            INITIAL          64K

            NEXT             1M

            MINEXTENTS       1

            MAXEXTENTS       UNLIMITED

            PCTINCREASE      0

            BUFFER_POOL      DEFAULT

           );


CREATE UNIQUE INDEX RTMS_USER.RTMS_FILE_TRANS_HIST_PK ON RTMS_USER.RTMS_FILE_TRANS_HIST

(ID)

LOGGING

TABLESPACE TBS_DATA01

PCTFREE    10

INITRANS   2

MAXTRANS   255

STORAGE    (

            INITIAL          64K

            NEXT             1M

            MINEXTENTS       1

            MAXEXTENTS       UNLIMITED

            PCTINCREASE      0

            BUFFER_POOL      DEFAULT

           );


ALTER TABLE RTMS_USER.RTMS_FILE_TRANS_HIST ADD (

  CONSTRAINT RTMS_FILE_TRANS_HIST_PK

  PRIMARY KEY

  (ID)

  USING INDEX RTMS_USER.RTMS_FILE_TRANS_HIST_PK

  ENABLE VALIDATE);









CREATE SEQUENCE RTMS_USER.SEQ_FILE_ID

START WITH 10000000

INCREMENT BY 1

MINVALUE 10000000

MAXVALUE 99999999

NOCACHE 

NOCYCLE 

NOORDER;





IIS 응용프로그램 풀 에서 32bit 사용을 true 로

'Database' 카테고리의 다른 글

Oracle DB 초기 설정  (0) 2017.08.20
Oracle XE 11g 설치  (0) 2017.08.20
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,

Oracle DB 초기 설정

Database 2017. 8. 20. 21:02
  • 테이블스페이스 생성

CREATE TABLESPACE tbsrtms datafile '/data/oracle/orcl/tbsrtms.dbf' size 10M;


Oracle에서 실제로 데이터 저장장소.

해당 경로에 파일 생성 및 초기값 지정 

경로 : '/data/oracle/orcl/tbsrtms

파일명 : tbsrtms.dbf

  • 스키마 생성

CREATE USER rtmsuser identified by 비밀번호 DEFAULT tbsrtms 테이블스페이스명;


  • 권한

GRANT CONNECT, RESOURCE TO 스키마명;




'Database' 카테고리의 다른 글

RTMS 용 DB SQL  (0) 2017.08.20
Oracle XE 11g 설치  (0) 2017.08.20
블로그 이미지

SuperNatural2

여전히 프로그래밍이 즐거운 사람 입니다

,