1

У бизнеса есть запрос на аудит, чтобы вывести список всех вновь созданных поставщиков в NAV 2016 за данный период. Мне не удалось найти дату создания записи или добавленную дату для таблицы поставщика. Это возможно? В настоящее время я поставляю бизнес с [Last Modified Date], которая включает, когда поставщик был добавлен или обновлен, но они хотят только вытащить только что добавленные.Есть ли способ установить дату создания поставщика в Dynamics NAV 2016?

Мой текущий код:

SELECT CAST([Last Date Modified] AS DATE) AS 'Last Date Modified' 
     ,[No_] 
     ,[Name] 
     ,[Search Name] 
     ,[Address] 
     ,[Address 2] 
     ,[City] 
     ,[Vendor Posting Group] 
     ,[Country_Region Code] 
     ,[Post Code] 
     ,[County] 
     ,[Vendor Type Code] 
    FROM [Company].[dbo].[Company$Vendor] 
    WHERE YEAR([Last Date Modified]) = '2016' 
    and MONTH([Last Date Modified]) IN ('10','11','12') 
ORDER BY [Last Date Modified] 
,[No_] 
+0

Если нет поля, то, очевидно, нет. Но есть вероятность, что для этой таблицы включен журнал изменений. Там вы можете найти запись о создании продавцов. Таблица «Изменить запись журнала». –

+0

Помимо восстановления резервной копии базы данных до периода времени и запроса разности между двумя таблицами, единственный способ, которым это может быть выполнено, продвигаться вперед без привлечения разработчика, как предполагает Мак. Включить журнал изменений в триггере вставки таблицы поставщика. Конечно, если есть информация, которую они могут отслеживать изменения или удаления, вы можете также рассмотреть возможность включения этих триггеров. К сожалению, единственный надежный способ определить это в ваших текущих обстоятельствах - это восстановить резервную копию. – user3289372

ответ

1

Если у вас есть журнал изменений активен, следующий основной запрос, который поможет вам все вставки подателю таблицы:

SELECT 
cle.[Primary Key]AS Vendor 
, cle.[New Value] 
, ven.Name 
, CAST(cle.[Date and Time] AS DATE) AS LogDate 
, CAST(cle.Time AS TIME(0)) AS LogTime 
, cle.[Field No_] 
, cle.[Type of Change] 
, cle.[User ID] 
FROM dbo.[YourCompany$Change Log Entry] cle 
    left outer JOIN dbo.YourCompany$Vendor ven 
    ON cle.[Primary Key] = ven.No_ 
    WHERE 
    cle.[Table No_] = 23 
    and cle.[Field No_] = 1 
AND cle.[Type of Change] = 0 
ORDER BY LogDate, LogTime, Vendor 

Я m также готовит сообщение в блоге в журнале изменений, которое должно появиться на следующей неделе.

+0

да, это так. Единственный способ узнать - журнал изменений – azatoth

0

Если у вас нет журнала изменений активной, то варианты

A. натянуть старую резервную копию и сравнить.

B. Используйте что-то еще, чтобы сделать это. найдите первую запись в журнале поставщиков для каждого поставщика; вы получите несколько ложных срабатываний, но может быть достаточно, чтобы удовлетворить аудиторов, если вы измените их запрос и доставку «все поставщики, впервые использовавшиеся в октябре 2016 года».
Или используйте некоторую информацию из своего аккаунта. (у них должна быть какая-то запись за пределами NAV?) Если вы используете последовательную серию номеров, вам нужно только идентифицировать первое в своем диапазоне дат.

В более долгосрочной перспективе вы можете поговорить с партнером Dynamics NAV и попросить их изменить таблицу поставщиков, чтобы отметить дату/время создания. Хотя я обычно рекомендую запускать журнал изменений в таблице поставщиков, так как это то, чего часто хотят видеть аудиторы. Я бы также всегда включал таблицу банковских счетов по той же причине.

 Смежные вопросы

  • Нет связанных вопросов^_^