繁体   English   中英

如何使用inventsiteid x++获取地址

[英]How to get Address using inventsiteid x++

就像在线程标题中一样。 我如何或通过什么可以获得具有 inventsiteid 的 LocationAddress 信息? 有很多表和视图我很困惑。 我需要为当前的站点 ID 选择站点地址。

这可能有点令人困惑。 这是一篇很棒的文章,可以帮助您做到这一点。

从inventsiteid获取地址

创建此作业并将inventSiteId替换为您的站点。

static void Job107(Args _args)
{
    InventSiteId                        inventSiteId    = 'MySite'; // PUT YOUR SITE HERE
    InventSite                          inventSite      = InventSite::find(inventSiteId);
    InventSiteLogisticsLocation         siteLocation;
    InventSiteLogisticsLocationRole     siteLocationRole;
    LogisticsLocationRole               locationRole;
    LogisticsPostalAddress              logisticsPostalAddress;

    // Method 1 - List all addresses. Refine query as needed.
    while select logisticsPostalAddress
    join siteLocation
        order by IsPrimary desc
        where logisticsPostalAddress.Location           == siteLocation.Location    &&
              siteLocation.Site                         == inventSite.RecId
    join siteLocationRole
        where siteLocationRole.SiteLogisticsLocation    == siteLocation.RecId
    join locationRole
        where locationRole.RecId                        == siteLocationRole.LocationRole
    {
        info(strFmt("Role: %1; Address: %2", locationRole.Type, logisticsPostalAddress.Address));
    }

    // Method 2; 1-liner for single address, good for just getting primary. Change role type for different addresses
    info(LogisticsPostalAddress::findByLocation(InventSite::getLocationFromRole(InventSite::find(inventSiteId).RecId, LogisticsLocationRoleType::Delivery)).Address);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM