# GetFormattedProcProgramInfo

### int GetFormattedProcProgramInfo(int lMsgId, ref string psPPID, ref string psMDLN, ref string psSoftRev, ref int pnCCodeCount, ref string\[] arrCCode, ref int pnNameValueFormat)

호스트가 전송한 Formatted Recipe(S7F23) 메시지에서 상세 정보를 추출합니다.\
단순한 파일 형태가 아니라, SECS 표준에 정의된 아이템 구조(Item List)로 들어온 레시피 정보를 C#에서 사용하기 편하도록 문자열과 배열 형태로 변환해줍니다.

Parameters

<table data-header-hidden><thead><tr><th width="178"></th><th width="125"></th><th></th></tr></thead><tbody><tr><td><strong>Name</strong></td><td><strong>Type</strong></td><td><strong>Description</strong></td></tr><tr><td>lMsgId</td><td>int</td><td>수신된 S7F23 메시지의 고유 ID</td></tr><tr><td>psPPID</td><td>ref string</td><td>(Output) 레시피 식별자 (Process Program ID)</td></tr><tr><td>psMDLN</td><td>ref string</td><td>(Output) 장비 모델명 (Model Name)</td></tr><tr><td>psSoftRev</td><td>ref string</td><td>(Output) 소프트웨어 개정 버전 (Software Revision)</td></tr><tr><td>pnCCodeCount</td><td>ref int</td><td>(Output) 포함된 C-Code(명령 코드)의 개수</td></tr><tr><td>arrCCode</td><td>ref string[]</td><td>(Output) 추출된 C-Code들의 데이터 리스트</td></tr><tr><td>pnNameValueFormat</td><td>ref int</td><td>(Output) 이름-값 형식 여부 설정값</td></tr></tbody></table>

```csharp
// 이벤트 핸들러 내부에 이벤트번호 703으로 들어옵니다.
 private void OnEventReceived(IntPtr lpParam, short nEventId, int lParam)                
 {
    case 723:              //S7F3
        HostSentFormattedPP(lParam);
        break;
 }
    
    
    
private void HostSentFormattedPP(int lMsgId)
{
    string strPPID = "";
    string strMDLN = "";
    string strSoftrev = "";
    int ccCount = 0;
    string[] strCCode = { };
    int nNameValueFormat = 0;
    m_gem.GetFormattedProcProgramInfo(lMsgId,ref strPPID,ref strMDLN,ref strSoftrev,ref ccCount,ref strCCode,ref nNameValueFormat);

    m_gem.ReplyProcProgram(lMsgId, 0x00, "");//정상일경우 0x00
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nviasoft.gitbook.io/nviasoft-docs/api-reference/undefined-3/getformattedprocprograminfo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
