codeunitPlatform, DevOps & Performanceofficial - Microsoftderived - from the source, no model text

Codeunit 8999 "Email Rate Limit Impl."

System Application · System.Email

Across versions

  1. BC23-25present
  2. BC268 procedures added
  3. BC27-30unchanged

Neighbourhood 5 connected objects and pages

Page 8887 "Email Accounts" (calls, 3 links)Email AccountsCodeunit 8888 "Email Dispatcher" (calls, 2 links)Email DispatcherCodeunit 1597 "Email Upgrade" (calls)Email UpgradeCodeunit 8887 "Email Test Mail" (calls)Email Test MailCodeunit 8900 "Email Impl" (calls)Email Impl

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

System Application · System.Email · BC23-30 · source at ea08af5e · facts from BC29

Properties

Property Value
Access Internal
Permissions tabledata “Email Rate Limit” = rimd, tabledata “Email Account” = r, tabledata “Email Outbox” = r, tabledata “Sent Email” = r

Procedures

  • RegisterRateLimit(var EmailRateLimit: Record "Email Rate Limit"; RegisteredAccount: Record "Email Account"; RateLimit: Integer)
  • UpdateRateLimit(RegisteredAccount: Record "Email Account")
  • IsRateLimitExceeded(AccountId: Guid; Connector: Enum "Email Connector"; EmailAddress: Text[250]; var RateLimitDuration: Duration): Boolean
  • IsConcurrencyLimitExceeded(AccountId: Guid; Connector: Enum "Email Connector"; EmailAddress: Text[250]): Boolean + BC26
  • GetEmailOutboxCurrentProcessingCountDuringPastOneHour(AccountId: Guid): Integer + BC26 (internal): Returns the current count of emails in the outbox that are being processed for current user within the past 1 hour.
  • GetRateLimit(AccountId: Guid; Connector: Enum "Email Connector"; EmailAddress: Text[250]): Integer
  • GetConcurrencyLimit(AccountId: Guid; Connector: Enum "Email Connector"; EmailAddress: Text[250]): Integer + BC26
  • GetMaxRetryLimit(AccountId: Guid; Connector: Enum "Email Connector"; EmailAddress: Text[250]): Integer + BC26
  • GetDefaultConcurrencyLimit(): Integer + BC26 (internal)

Plus 3 local procedures.

Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.

Called by

Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Email Rate Limit Impl."), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources