> For the complete documentation index, see [llms.txt](https://swonh.gitbook.io/sdmp-user-manual-kor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://swonh.gitbook.io/sdmp-user-manual-kor/general-module/undefined-1/datacontrol.md).

# DataControl

데이터 처리와 관련된 기능을 담당하는 컨트롤

### GetData:star:

```csharp
public override IData GetData()
```

#### 정의

Solver가 구동되는  필요한 데이터를 정의합니다.

#### 반환

<table><thead><tr><th width="116">Type</th><th width="443">Description</th><th>Default</th></tr></thead><tbody><tr><td>IData</td><td>Solver가 구동되는 과정에서 필요한 데이터 입니다.</td><td>Null</td></tr></tbody></table>

#### 예제

```csharp
public override IData GetData()
{
    IData data = DataHelper.CreateData();

    return data;
}
```

아래 DataHelper 내 CreateData 함수 참조

```csharp
public static IData CreateData() 
{
    CRPData data = new CRPData();

    data.SetupCostMatrix = GetSetupCostMatrix();

    List<CRPJob> jobs = CreateJobs();
    Dictionary<int, CRPConveyor> conveyors = CreateConveyors(jobs);
    CRPFactory factory = CreateFactory(conveyors);
    
    data.CRPFactory = factory;
    return data;
}
```
