2017-09-26 3 views
1

NetSuite 백엔드 테이블에서 Redshift로 가져온 데이터를 사용하여 NetSuite 외부에서 보고서를 작성하고 있습니다 (다른 소스 시스템의 데이터와이 데이터를 결합하기 위해). 나는 Redshift에 완전히 파이프되어 여러 테이블을 가지고 있는데 내 쿼리를 작성합니다. 월간 P & Ls에서 일부 값을 다시 만들려고하면서 NS 총계에 표시된 것과 묶어 두지 않은 것으로 나타났습니다. Google 재무 팀의 문제를 해결 한 후에는 삭제되었지만 거래 테이블에 여전히 표시되는 3 개의 인보이스가 표시됩니다. 나는 IsDeleted 필드 나 이와 비슷한 것이 아닙니다. 결과를 필터링하기 위해 삭제 된 레코드를 식별하려면 어떻게해야합니까?Netsuite Transactions 테이블에서 삭제 된 트랜잭션을 식별하는 방법

+0

데이터를 얼마나 자주 레드 쉬프트로 가져 왔습니까? 그리고 귀하의 ETL 프로세스는 어떻게 생겼습니까? Fivetran 또는 Stitch와 같은 서비스를 사용하는 경우 레코드가 삭제되지 않습니다. – sawyer

+1

그렇지 않으면 System_notes 테이블을 쿼리하여 모든 레코드 생성, 수정, 업데이트 및 삭제에 액세스 할 수 있습니다. – sawyer

+1

우리는 Airflow와 Spark를 사용하여 매시간 Redshift로 데이터를 가져 왔습니다. System_notes 테이블은 내가 찾고 있었던 것처럼 보인다. 감사! – Alex

답변

0

NetSuite에서 삭제 된 레코드 (인보이스의 레코드 유형)에 대한 저장된 검색을 생성 할 수 있습니다. CSV 또는 Excel을 통해 내보내기 한 다음이 CSV/Excel을 사용하여 Redshift 테이블을 업데이트하고 삭제 된 레코드를 태그하십시오.

추후 Redshift에서 삭제 된 레코드를 업데이트/태그 할 NetSuite 레코드가 삭제되면 Redshift (사용 가능한 경우)에 대한 API 호출을 만들 수 있습니다. 이렇게하면 삭제 된 레코드를 생성 할 필요가 없습니다.

+0

흥미 롭습니다. 따라서 NetSuite 스키마에는 레코드가 프런트 엔드에서 삭제되었는지 여부를 나타내는 필드가 없습니다. – Alex

+1

레코드가 삭제되면 완전히 삭제됩니다. 그래서 NetSuite는 삭제 된 레코드 저장된 검색을 만들었습니다. 이 저장된 검색은 한번 삭제 된 레코드의 대상, UI, 사용자 이벤트, 일정 등을 알려줍니다.귀하의 경우에는 저장된 검색을 컨텍스트 = 사용자 인터페이스로 필터링 할 수 있습니다 (프론트 엔드라고하면 사용자 인터페이스라고 함) – vVinceth

+0

아 재미 있습니다. 재무팀과 이야기하면서 UI에서 3 개의 인보이스가 삭제되었다고 전했다. 그러나 여전히 트랜잭션 테이블에서 이러한 트랜잭션을 볼 수 있습니다. 어떤 레코드가 UI에서 삭제되었는지 확인하기 위해 연결할 수있는 테이블의 일부 표시 필드를 찾으려고했습니다. 나는 그들이 삭제 된 레코드 저장된 검색을 위해 어딘가에 기록되고 저장되어야한다고 생각 하겠지? – Alex

1

거래의 경우 다른 포스터는 삭제 된 레코드를 사용하지만 여기서 현명한 사람에게 말하면 삭제 된 레코드는 거래 자체 만 추적합니다. 따라서 최종 사용자가 트랜잭션의 일부 행을 삭제하면 삭제 된 레코드 WONT는 트랜잭션을 삭제 된 레코드에 표시합니다.

일부 메모 작성자는 시스템 메모를보고 있지만 일부 경우 시스템 메모에 유형 영향에 대한 새롭고 오래된 version_id 만 있습니다. 또한 ODBC 측에서 매핑 한 것을 가져 오는 방법을 찾지 못했습니다. (내가 틀렸다면 고쳐주세요. 우리가 찾은 엿 같은 해킹이 더 좋은 방법을 얻는 것보다 더 기쁠 것입니다.)

여기서 우리 프로세스에서 발견 한 유일한 해결책은 last_modified_date> {ts'last 가져 오기 날짜 '}를 임시 테이블에 저장하고 해당 트랜잭션의 일부 행이 삭제되었는지 확인하십시오. 또한, 삭제 된 트랜잭션 자체를 찾기 위해 삭제 된 레코드를 조사하는 것. 그것은 우리가 우리의 P & L에 대해 일치시킬 수 있었던 유일한 방법입니다. 이 논리는 운좋게도 프로세스에서 최종 사용자가 트랜잭션을 직접 편집하여 일부 행을 삭제해야한다는 논리입니다. 따라서 변경 내용을 저장하면 트랜잭션 자체에 새로운 수정 날짜가 적용됩니다.

우리는 NetSuite 지원을 직접 요청했으며 공식적으로 라인 삭제를 추적하는 공식 테이블이 없다고 말했습니다.

+0

NetSuite 컨설턴트와 이야기를 마치고 나에게 말했습니다 똑같은 것. 의견을 보내 주셔서 감사합니다! – Alex

관련 문제