---
id: object/codeunit/10035-us
type: object
title: Codeunit 10035 "Helper IRIS" (US)
summary: Codeunit 10035 "Helper IRIS" (US) in the US country layer (Microsoft.Finance.VAT.Reporting). 41 public procedures, 4 events. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - codeunit
  - us layer
versions:
  introduced: "29"
  last_changed: null
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: ca2a00c8be546984410e89b8ea63943adeed5de2904d5af9eff7921a87ee1c80
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/US/IRSForms/app/src/IRIS/HelperIRIS.Codeunit.al
    title: src/Apps/US/IRSForms/app/src/IRIS/HelperIRIS.Codeunit.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations:
    - localization/us
  videos: []
  posts: []
  guidelines: []
object_type: codeunit
object_id: 10035
name: Helper IRIS
namespace: Microsoft.Finance.VAT.Reporting
app: IRSForms
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
country: US
counts:
  fields: 0
  procedures: 61
  events: 4
  subscribers: 0
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
---

# Codeunit 10035 "Helper IRIS" (US)

> Codeunit 10035 "Helper IRIS" (US) in the US country layer (Microsoft.Finance.VAT.Reporting). 41 public procedures, 4 events. Introduced in BC29, still in BC30.

US country layer · Microsoft.Finance.VAT.Reporting · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/US/IRSForms/app/src/IRIS/HelperIRIS.Codeunit.al) · facts from BC29

An object of the [US localization](../../localizations/us.md), not part of W1.

## Properties

| Property | Value |
|---|---|
| Access | Public |

## Events published

- `OnAfterGetFormBoxAmountXmlElementNames(PeriodNo: Text; FormType: Text; var FormAmountXmlElementNames: Dictionary of [Text, Text])` (integration)
- `OnAfterGetAmountXmlElementList(PeriodNo: Text; FormType: Text; ElementOrderType: Text; var AmountXmlElementNames: List of [Text])` (integration)
- `OnAfterGetFederalIncomeTaxWithheldFormBoxes(PeriodNo: Text; var FormBoxes: Dictionary of [Text, Boolean])` (integration)
- `OnBeforeAddOtherForm1099DetailsPart(var TempIRS1099FormDocHeader: Record "IRS 1099 Form Doc. Header" temporary; var XmlNodesNameValue: Dictionary of [Text, Text])` (integration)

## Procedures

- `GetIRISFeatureName(): Text`
- `GetRequestType(): Text`
- `CreateUniqueTransmissionIdentifier(): Text[100]`
- `CreateUUID(): Text[36]`
- `Initialize(RootNodeName: Text)`
- `AddParentXmlNode(NodeName: Text)`
- `AppendXmlNode(NodeName: Text; NodeText: Text)`
- `AppendXmlNodeIfNotZero(NodeName: Text; NodeValue: Decimal)`
- `CloseParentXmlNode()`
- `UpdateSingleXmlNode(NodeName: Text; NodeText: Text)`
- `AddPrefixToXPath(XPath: Text; Prefix: Text): Text`
- `WriteXmlDocToTempBlob(var TempBlob: Codeunit "Temp Blob")`
- `WriteTextToTempBlob(var TempBlob: Codeunit "Temp Blob"; TextToWrite: Text)`
- `WriteTempBlobToText(var TempBlob: Codeunit "Temp Blob"): Text`
- `GetTransmissionFileSizeText(var TransmissionLog: Record "Transmission Log IRIS"): Text[20]` (internal)
- `GetTransmissionTypeName(TransmissionType: Enum "Transmission Type IRIS"): Text`
- `ShowIRS1099FormDocuments(ErrorInfo: ErrorInfo)` (internal)
- `GetAmtXmlElementsFileContent(PeriodNo: Text): JsonObject` (internal)
- `GetFormBoxAmountXmlElementNames(PeriodNo: Text; FormType: Text): Dictionary of [Text, Text]` (internal): Returns the dictionary of Form Boxes and their corresponding Amount Xml Element Names for the specified Form Type, for example MISC-01 -> RentAmt
- `GetFormBoxAmountXmlElementNames(PeriodNo: Text): Dictionary of [Text, Text]` (internal): Returns the dictionary of Form Boxes and their corresponding Amount Xml Element Names, for example MISC-01 -> RentAmt
- `GetFederalIncomeTaxWithheldFormBoxes(PeriodNo: Text): Dictionary of [Text, Boolean]` (internal): Returns the dictionary (HashSet) of Form Boxes that are used for Federal Income Tax Withheld, for example MISC-04
- `GetTotalAmountsXmlElementsOrder(PeriodNo: Text; FormType: Enum "Form Type IRIS"): List of [Text]`
- `GetDetailAmountsXmlElementsOrder(PeriodNo: Text; FormType: Enum "Form Type IRIS"): List of [Text]`
- `AddOtherForm1099DetailsPart(var TempIRS1099FormDocHeader: Record "IRS 1099 Form Doc. Header" temporary)` (internal)
- `IsForeignCountryRegion(CountryRegionCode: Code[10]): Boolean`
- `ConcatenateWithSpace(FirstString: Text; SecondString: Text): Text`
- `FormatTIN(InputText: Text): Text`
- `FormatBusinessName(InputText: Text; var BusinessNameLine1: Text; var BusinessNameLine2: Text)`
- `FormatContactPersonName(InputText: Text): Text`
- `FormatPersonName(InputText: Text): Text`
- `FormatStreetAddress(InputText: Text; var AddressLine1: Text; var AddressLine2: Text)`
- `FormatCityName(InputText: Text; AddressType: Enum "Address Type IRIS"): Text`
- `FormatZipCode(InputText: Text): Text`
- `MatchStateCode(InputText: Text; var StateCode: Text): Boolean`
- `FormatPhoneNumber(InputText: Text): Text`
- `FormatText(InputText: Text; MaxLength: Integer): Text`
- `FormatText(InputText: Text): Text`
- `FormatDecimal(InputDecimal: Decimal): Text`
- `FormatBoolean(InputBoolean: Boolean): Text`
- `ISOToFIPSCountryCode(ISOCountryCode: Code[10]): Code[2]`
- `GetVendorBankAccountNo(var Vendor: Record Vendor): Text`

Plus 16 local procedures.

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). 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: "Helper IRIS")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.

A US country object, not part of W1: the default corpus does not have it; `bcatlas_list_countries` shows which countries the atlas has.
