NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • NGM 6
  • 매뉴얼

    NGM 6

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 외부 API - C# - C# 코드 실행 (External API box, C#, C# code execute)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 엔지엠 매크로는 기본적으로 노코드 매크로 제작 프로그램입니다. 쉽게 말해서 프로그래밍 언어를 몰라도 누구나 쉽고 빠르게 업무 자동화 RPA 매크로 프로그램을 제작할 수 있게 해준다는 의미입니다. 하지만, 일부 업무 로직은 몇줄의 코딩으로 해결될 수 있습니다. 액션을 여러개 사용해서 처리하는것보다 유지보수 및 관리 측면에서 이점이 있고 속도도 로우레벨 코드로 작성하는게 더 효율적입니다. 엔지엠 매크로에는 코딩 방식으로 처리할 수 있는 몇가지 방법들을 제공합니다.

    [ 오토핫키 코드 실행 ]

    [ 파이썬 코드 실행 ]

     

    오늘 알아볼 C# 코드 실행을 테스트하기 위해 엔지엠 매크로를 실행하고, 새로운 스크립트를 하나 추가하세요.

    cnOuw3h.gif

     

     

    외부 API의 C# 카테고리에서 C# 코드 실행 액션을 스크립트에 추가하세요.

    4MVOkyy.png

     

     

    오토핫키 코드 실행 액션을 사용하려면 오토핫키 언어를 알아야 합니다. 파이썬 코드 실행 액션을 사용하려면 파이썬 언어를 알아야 하죠. 그리고, C# 코드 실행 액션을 사용하려면 기본적으로 C# 언어를 어느정도 알고 있어야 합니다. [ C# 언어 매크로 ] 강좌와 기본 강좌가 학습 게시판에 있으니 참고하시면 좋을거 같습니다.

     

    아래 그림과 같이 변수 3개를 위에 추가하고, 아이디는 각각 a, b, c로 설정하세요. 그리고, 값은 a에 5, b는 10, c는 15로 설정 해줍니다.

    lMzCF5I.png

     

     

    여러개의 변수들 값을 다 더해서 값을 반환하는 간단한 예제 코드입니다.

    using System;
    
    public class NGClass
    {
        public static int NGMethod()
        {
            return {a}+{b}+{c};
        }
    }

     

    각각의 변수 a, b, c의 값을 더한 후 리턴해줍니다. 아래 그림과 같이 코드 입력에 위의 C# 코드를 붙여넣기 하세요. 그리고, 메소드 이름에는 NGMethod, 클래스 이름에는 NGClass를 입력해야 합니다. 메소드 이름과 클래스 이름은 임의로 작성해도 됩니다.

    p5SPY2o.png

     

     

    5+10+15의 결과 값인 30이 정상적으로 나옵니다.

    ZXKMbep.png

     

     

    날짜를 계산하기 위해 d 변수를 하나 추가했습니다. 그리고, 값은 지금부터 한달 전인 "2023-04-10 00:00:00"와 같이 입력했습니다.

    NV2mJlt.png

     

     

    코드는 아래와 같이 메소드를 하나 추가했습니다.

    using System;
    
    public class NGClass
    {
        public static int NGMethod()
        {
            return {a} + {b} + {c};
        }
    
        public static string DateTimeTest() // 추가된 메소드
        {
            return (DateTime.Now - DateTime.Parse("{d}")).ToString();
        }
    }

     

    메소드 이름을 DateTimeTest로 수정하세요.

    vzTtGkB.png

     

     

    실행하면 오늘 현재와 한달 전 날짜 및 시간 차이를 쉽게 알 수 있습니다.

    kLVMQby.png

     

     

    만약, 날짜 차이만 알고 싶다면 아래와 같이 코드를 변경하면 됩니다.

    using System;
    
    public class NGClass
    {
        public static int NGMethod()
        {
            return {a} + {b} + {c};
        }
    
        public static string DateTimeTest() // 추가된 메소드
        {
            // 날짜만
            return (DateTime.Now - DateTime.Parse("{d}")).Days.ToString();
            // 시간만
            // return (DateTime.Now - DateTime.Parse("{d}")).Hours.ToString();
            // 초만
            // return (DateTime.Now - DateTime.Parse("{d}")).Seconds.ToString();
        }
    }

     

    실행하면 딱 30일 차이가 나는걸 확인할 수 있습니다.

    5KywFUs.png

     

     

    문자열의 길이를 알고 싶으면 C#의 다양한 메소드를 활용할 수 있습니다. e 변수를 추가하고 문자열에 "NGMsoftware"를 입력 했습니다.

    rhnLolL.png

     

     

    코드는 아래와 같이 문자열 길이를 가져올 메소드가 하나 추가되었습니다.

    using System;
    
    public class NGClass
    {
        public static int NGMethod()
        {
            return {a} + {b} + {c};
        }
    
        public static string DateTimeTest() // 추가된 메소드
        {
            return (DateTime.Now - DateTime.Parse("{d}")).Days.ToString();
        }
    
        public static int TextLength() // 문자열의 길이 알아내기
        {
            return "{e}".Length;
        }
    }

     

    NGMsoftware의 문자열 길이는 11입니다.

    qXZISnp.png

     

     

    여러 단계의 액션을 이용해서 문자열을 분리하고 합쳐서 어떤 처리를 해야 한다면 액션을 사용하기보다는 코드를 작성하는게 더 편할 수 있습니다. 이 부분은 사용자마다 호불호가 갈리겠지만, 코딩이 편한분들은 어느정도 오토핫키나 파이썬 그리고, C# 코드 실행 액션을 이용할 수 있습니다. 비지니스 로직에서 한번에 묶어서 처리해야 할 계산이나 어떤 값을 조합해서 만들어내야 한다면 이게 더 쉬운 방법입니다. 물론, C# 코드를 어느정도 다룰 수 있어야 합니다^^

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.