BizDoc.Infrastructure.SAP 8.4.2

dotnet add package BizDoc.Infrastructure.SAP --version 8.4.2
NuGet\Install-Package BizDoc.Infrastructure.SAP -Version 8.4.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BizDoc.Infrastructure.SAP" Version="8.4.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add BizDoc.Infrastructure.SAP --version 8.4.2
#r "nuget: BizDoc.Infrastructure.SAP, 8.4.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install BizDoc.Infrastructure.SAP as a Cake Addin
#addin nuget:?package=BizDoc.Infrastructure.SAP&version=8.4.2

// Install BizDoc.Infrastructure.SAP as a Cake Tool
#tool nuget:?package=BizDoc.Infrastructure.SAP&version=8.4.2

SAP for BizDoc

In program.cs

builder.Services.AddBizDoc().
  AddSAP(options => 
    {
      options.ConnectionString = "sap";
    });

app.UseBizDoc().UseSAP();
Extension Usage
UseAriba()
UseUserIdentity()
UseEmployeeIdentity()
UseExchangeRate() Set base currency in options

Ariba

Create and approve an application in SAP.

Obtain an Application key and set it in AddSAP().

public class MyClass(IAriba ariba) {
    public Task GetOrdersAsync() => ariba.Orders.GetOrderHeaderListUsingGET("...");
}

Employee Identity

Implement IdentityEmployee and EmployeeIdentity to convert BizDoc user identity to SAP employee and vice versa.

builder.Services.AddBizDoc().
  AddSAP(options => 
    {
      options.EmployeeIdentity = e => e.ServiceProvider.GetService<SAPStorage>().Employees.Find(e.EmployeeId).UserCode;
    });

If employee identifier is in ClaimPrincipal, set options EmployeeIdClaimType.

Object type

Type
A/R Invoice
Delivery
Returns
Sales Order
A/P Invoice
Goods Receipt Purchase Order
Goods Return
Purchase Order
Sales Quotation
Goods Receipt
Goods Issue
Inventory Transfer
Draft
Correction Invoice
A/P Correction Invoice
A/P Correction Invoice Reversal
A/R Correction Invoice
A/R Correction Invoice Reversal

| A/R Down Payment | A/P Down Payment | Inventory Transfer Request | Purchase Request | A/R Return Request | A/P Return Request | Self Invoice | Purchase Quotation

Set ObjectType in options to relevant types.

From Architecture tool, create new analysis from SAP - Documents.

PO, type 'po' and a number.

Item, type # and a number.

Widgets

Departments Performace.

Cost Centers Performace.

Peers.

My Teams.

My Teams Pending.

Team Pending.

Teams Performance.

Workflow

DirectManager node

Assign document owner employee manager, if exists.

Position node

Assign user(s) to w/f by employee position.

Attributes

Owner Cost Center.

Owner Branch.

Owner Department.

Owner Business Place.

Rules

User Branch.

User Department.

User Business Place.

Components

Types added to bizdoc.SAP.json.

Name Usage
CostCenters
Projects
Departments
AccountSegmentationCategories Set SegmentName in configuration file options
AccountCategories
GeneralLedgerAccounts
Branchs
Warehouses
Countries
ItemGroups
BusinessPlaces
ExpenseTypes
Employees
Salesperson
Authorities per AuthorityType
Vendors
Customers
PointsOfIssue

| NCM | | Stages | | DistributionRules | | CardGroups | | Industries | | Manufacturers | | Locations | Item location | Teams | Employee teams | Positions | User / employee position

Configure AccountSegmentationCategories in bizdoc.json:

{
  "Types": [
    {
        "Name": "departments",
        "Type": "BizDoc.SAP.Configuration.AccountSegmentationCategories, BizDoc.SAP",
        "Options": {
            "SegmentName": "region"
        }
    }
  ]
}

Database

Access database by injecting the SAPStorage service.

using BizDoc.SAP.Storage;

public class MyService {
  private readonly SAPStorage _storage;

  public MyService (SAPStorage storage) => _storage = storage;

  private void List() {
    foreach (var order in _storage.PurchaseOrders) {
	  ...
    }
  }
}

API

Name Method Usage
/api/sap/businesspartners/vendors GET take, value
/api/sap/businesspartners/customers GET take, value
/api/sap/accountsegmentation/{segment} GET take, value AccountSegmentationCategory
/api/sap/businesspartners/{code} GET
/api/sap/glaccounts GET take, parent, value GeneralLedgerAccount
/api/sap/items GET take, value
/api/sap/items/{number} GET
/api/sap/purchaseorders/{id} GET

Security notice: Restrict api.

Angular

npm @bizdoc/sap package.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.4.2 103 3/16/2024
8.4.1 91 3/13/2024
8.3.9 96 3/12/2024
8.3.8 88 3/11/2024
8.3.7 78 3/11/2024
8.3.6 70 3/10/2024
8.3.5 93 3/10/2024
8.2.5 88 3/7/2024
8.2.4 96 3/5/2024
8.2.2 94 2/20/2024
8.1.2 120 1/17/2024
8.1.1 88 1/12/2024
7.1.1 164 11/20/2023
7.0.1 138 9/23/2023
7.0.0 207 3/28/2023
6.8.8 348 11/6/2022
6.8.7 329 11/1/2022
6.8.6 327 10/31/2022
6.8.5 355 10/27/2022
6.8.4 355 10/27/2022
6.8.3 341 10/24/2022
6.8.2 363 10/20/2022
6.8.1 361 10/18/2022
6.8.0 386 10/16/2022
6.7.12 352 8/25/2022
6.7.11 350 8/24/2022
6.7.9 354 8/14/2022
6.7.8 362 8/9/2022
6.7.7 353 8/4/2022
6.7.5 382 7/24/2022
6.7.3 389 7/21/2022
6.7.2 413 7/12/2022
6.7.1 390 7/10/2022
0.1.16 406 7/2/2022
0.1.14 406 6/30/2022
0.1.13 367 6/30/2022
0.1.10 419 6/29/2022
0.1.8 426 6/26/2022
0.1.7 398 6/26/2022
0.1.5 380 6/24/2022
0.1.4 382 6/24/2022
0.1.3 407 6/23/2022
0.1.1 414 6/23/2022
0.1.0 368 6/23/2022