다우오피스 개체 관련 로직을 확인했는데
자주 확인해서 그런지 다음에 개체가 추가되더라도 금방 해결할 수 있을 것 같았다.
특수 필드 추적 관련 회의 때문에 회의실을 예약해두고 내용을 재확인했는데
요청사항이 모호한 상태라 여기서 뭘 더 해야 할지는 모르겠다.
다우오피스 템플릿에 필요한 필드 18개를 생성해주고
템플릿과 연결한 다음 PickList의 경우 Value가 아닌 API가 출력됐기 때문에
해당 값들이 정상 출력될 수 있도록 fm필드를 생성해서 다시 연결 후 다우오피스 발송 테스트를 완료했다.
특수 필드 추적 관련해서 로그를 확인해보니 유사한 내용을 수십번 발송하는 비정상 로그가 확인되었는데
이 부분은 수정되지 않더라도 일단 방향성에 따라 의미없을 수 있어서 그냥 넘어가기로 했다.
이전에 9개 필드 인터페이스 요청했던 부분이 지금 정의서가 도착했는데
곧 회의라서 정의서만 빠르게 확인하고 회의 준비를 했다.
회의에는 배송 전 선결제 금액 처리 관련된 부분과
특수 필드들 로그 확인에 대한 내용을 결정해야 했는데
특수 필드의 경우 어떤 방식으로 뭘 보길 원하는지 정확하게 나오지 않았고
OrderItem과 연결하려고 했지만 해당 필드가 SAP에서 계속 변경해서 주기 때문에
사실상 절대 연결할 수 없는 필드가 되어버려서 30분으로 예상한 회의는 2시간이나 지속되어버렸다.
결국 해당 부분은 타협해서 OrderItem 부분은 최대한 수정되지 않게 사용하고
연결이 끊어질 경우 상관하지 않고 새로 히스토리를 쌓는 부분으로 결정됐다.
배송 전 선결제 부분도 처음에는 인터페이스로 처리하려고 했는데
연결된 배송 내용들의 상태값을 묶어서 일정 범위 내 금액만 포함시키고
나머지 금액은 선결제와 무관하게 하는 방식으로 합의됐기 때문에
추가 인터페이스 없이 진행할 수 있었다.
회의 내용 정리 후 어떤 작업을 해야 하는지 정리했는데
해당 회사에서 맡은 규모있는 업무만 5개나 되었기 때문에 혼란스러웠고
고객사 담당자분에게 우선순위를 문의해서 일단 처리 순서를 정할 수 있었다.
9개 인터페이스 필드를 확인하면서 연결 준비를 했는데
다른 프로젝트에서 인터페이스 운영 배포를 해달라는 요청이 들어왔고
그 프로젝트의 경우 9월 초에 마감이기 때문에 우선순위가 더 높아서 먼저 처리하기로 했다.
이후 관련 테스트를 위해 추가 테스트 데이터 생성을 요청받았고
해당 내용에 대해 SAP쪽 개발자분에게 전달 후 필요한 코드를 확인했는데
확실하다는 내용과는 다르게 두가지 중복된 계정이 있었기 때문에
해당 부분은 내일 추가로 확인 후 전달해서 테스트데이터를 받기로 하고 마무리했다.
(1).백준 2473번 세 용액은 용액 문제와 비슷하게 용액의 산성 또는 알칼리성을 표현한 수치가 있을 때
이 중 셋을 조합해서 산도가 0에 가까운 조합을 출력해야 하는 문제였다.
고민이 많이 되긴 했는데 문제 태그 자체가 투포인터였고
어떻게 투포인터를 할 수 있는지 생각해봤는데 조합을 처리하듯 하나씩 고정값을 for문으로 좁혀주고
나머지 값들에서 투포인터로 처리하면 기존 투포인터 문제와 동일한 결과를 볼 수 있었다.
다만 0이 되면 더 계산할 필요가 없기 때문에 중단시켜줬는데
예전에 배웠던 for문 또는 while 등에서 중첩된 경우 특정 위치를 종료할 수 있는 ':'로 명명하기 기술을 사용했고
바로 종료시키는 방법으로 조금이나마 메모리 낭비를 막아줬다.
const input = `7
-2 -3 -24 -6 98 100 61`.split('\n')[1].split(' ').map(Number).sort((a, b) => a - b)
let min = Infinity
let result = []
outer : for (let i = 0; i < input.length - 2; i++) {
let left = i + 1
let right = input.length - 1
while (left < right) {
const sum = input[i] + input[left] + input[right]
if (Math.abs(sum) < min) {
min = Math.abs(sum)
result = [input[i], input[left], input[right]]
}
if (sum < 0) {
left++
} else if (sum > 0) {
right--
} else {
break outer
}
}
}
console.log(result.sort((a, b) => a - b).join(' '))
'회고' 카테고리의 다른 글
[개발일지] - 415 (2) | 2024.08.21 |
---|---|
[개발일지] - 414 (0) | 2024.08.20 |
[개발일지] - 412(주말) (0) | 2024.08.18 |
[개발일지] - 411(주말) (0) | 2024.08.17 |
[개발일지] - 410 (0) | 2024.08.16 |