1번째 라인 파일크기와 2번째 라인 파일크기를 비교해보자
1번은 142115 , 2번은 141741이다.
데이터는 동일한 상태인데 전송시에 파일길이 유지를
안해줘서 스트럭쳐의 마지막 필드값이 비어있었기에 빈값들이 안들어가서 파일이 만들어진 것이다.
즉, 라인길이를 200자 고정으로 하고싶었는데
맨 마지막 필드길이가 100자리이고 그게이
비어있어 100자만 만들어진 것이다...
그러면 스트럭쳐 필드의 길이를 모두 합산하여 라인길이를 유지하는 방법은 무엇일까?
빈칸만큼 뭐 스페이스를 넣어주거나 그래야 하나?
아니다.. 코드는 매우 심플하다.
아래처럼 각 라인들을 transfer 하면서 length 를
지정해 주면 된다...
open dataset file_path. 해서 파일만들어열고
transfer <struc> to File_path LENGTH 길이지정.
close dataset file_path.
하면된다.
그러면 각 스트럭쳐의 길이 합산은 어찌하나?
그냥 하드코딩으로 때려넣느냐?
그래도 되는데 동적 합산을 해도 된다.
이 블로그에도 있는 do enddo 사이에
assign component 해서 계속 돌면서 필드길이를 더하면 된다.
아래 처럼 코딩해보자..
아래는 헤더값 / 트레일러값 따로 구하려고
2개를 했네.... (내가 짠게 아니긴 한데.. 저런건 perfome 으로 모듈화해서 1번씩만 코딩해는게...)
그럼 get type len 폼안에 내용은?
아래 사진참조..
discribe field 해서 타입과 lenth 구하면 된다.
이상 끝!!!@@@
'ERP-SAP > ABAP' 카테고리의 다른 글
<ABAP> ITAB 대량건 처리시 MEMORY 덤프 방지 및 처리속도 튜닝 방법.. (bkpf besg) (3) | 2024.06.19 |
---|---|
<ABAP> 유지보수뷰에 묶인 티코드 찾기(Finding a transaction code tied to maintenance view) (0) | 2024.04.23 |
<abap> bcs를 이용 gos 데이터를 읽어 mail로 첨부하여 전송 (0) | 2024.03.06 |
<ABAP> Itab 을 excel 첨부후 메일 전송(internal table to excel attached and send mail) (2) | 2024.03.06 |
<ABAP> MM CBO STRUCTURE SCREEN VALUE SAVE . MM 생성 CBO데이터 저장하기 (0) | 2024.02.19 |