

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Aus NetSuite Oracle-Entitäten lesen
<a name="oracle-netsuite-reading-from-entities"></a>

**Voraussetzung**

Ein NetSuite Oracle-Objekt, aus dem Sie lesen möchten. Sie benötigen den Objektnamen wie `deposit` oder `timebill`. Die folgende Tabelle zeigt die unterstützten Entitäten.

**Unterstützte Entitäten für Quelle**:


| Entität | Kann gefiltert werden | Unterstützt „Sortieren nach“ | Unterstützt Limit | Unterstützt „\* SELECT“ | Unterstützt Partitionierung | 
| --- | --- | --- | --- | --- | --- | 
| Einzahlung | Ja | Nein | Ja | Ja | Ja | 
| Beschreibung Artikel | Ja | Nein | Ja | Ja | Ja | 
| Bestandsartikel | Ja | Nein | Ja | Ja | Ja | 
| Artikelbereitstellung | Ja | Nein | Ja | Ja | Ja | 
| Artikelgruppe | Ja | Nein | Ja | Ja | Ja | 
| Journaleintrag | Ja | Nein | Ja | Ja | Ja | 
| Nicht zum Bestand gehörender Kaufartikel | Ja | Nein | Ja | Ja | Ja | 
| Nicht zum Bestand gehörender Wiederverkaufsartikel | Ja | Nein | Ja | Ja | Ja | 
| Nicht zum Bestand gehörender Verkaufsartikel | Ja | Nein | Ja | Ja | Ja | 
| Bestellungen | Ja | Nein | Ja | Ja | Ja | 
| Niederlassung | Ja | Nein | Ja | Ja | Ja | 
| Hersteller | Ja | Nein | Ja | Ja | Ja | 
| Lieferantenrechnung | Ja | Nein | Ja | Ja | Ja | 
| Rücksendegenehmigung für Lieferanten | Ja | Nein | Ja | Ja | Ja | 
| Zeitrechnung | Ja | Nein | Ja | Ja | Ja | 
| Kundenzahlung | Ja | Nein | Ja | Ja | Ja | 
| Erfüllungsanfrage | Ja | Nein | Ja | Ja | Ja | 
| Item | Ja | Ja | Ja | Ja | Ja | 
| Transaktionsposition | Ja | Ja | Ja | Ja | Ja | 
| Transaktionsbuchhaltungsposition | Ja | Ja | Ja | Ja | Ja | 
| Benutzerdefinierte Datensatztypen (dynamisch) | Ja | Ja | Ja | Ja | Ja | 

**Beispiel:**

```
netsuiteerp_read = glueContext.create_dynamic_frame.from_options(
    connection_type="netsuiteerp",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "deposit",
        "API_VERSION": "v1"
    }
)
```

**Angaben zur NetSuite Oracle-Entität und zum Feld**:

Oracle lädt die verfügbaren Felder NetSuite dynamisch unter der ausgewählten Entität. Je nach Datentyp des Felds werden die folgenden Filteroperatoren unterstützt.


| Felddatentyp | Unterstützte Filteroperatoren | 
| --- | --- | 
| Zeichenfolge | LIKE, =, \!= | 
| Date | BETWEEN, =, <, >, <=, >= | 
| DateTime | BETWEEN, <, <=, >, >= | 
| Numerischer Wert |  =, \!=, <, <=, >, >= | 
| Boolesch |  =, \!= | 

**Erwartetes Eingabeformat für boolesche Werte im Filterausdruck**:


| Entität | Boolesches Wertformat „wahr“ | Boolesches Wertformat „falsch“ | Beispiel | 
| --- | --- | --- | --- | 
| Entitäten vom Typ „Artikel“, „Transaktionsposition“, „Transaktionsbuchhaltungsposition“ und „Benutzerdefinierter Datensatz“ | T oder t | F oder f | isinactive = „T“ oder isinactive = „t“ | 
| Alle anderen Entitäten | true | false | isinactive = true | 

## Partitionieren von Abfragen
<a name="oracle-netsuite-reading-partitioning-queries"></a>

**Feldbasierte Partitionierung**

Der NetSuite Oracle-Konnektor verfügt über dynamische Metadaten, sodass unterstützte Felder für die feldbasierte Partitionierung dynamisch ausgewählt werden. Die feldbasierte Partitionierung wird für Felder mit dem Datentyp Integer BigInteger, Date oder unterstützt. DateTime

Sie können die zusätzlichen Spark-Optionen `PARTITION_FIELD`,`LOWER_BOUND`, `UPPER_BOUND` und `NUM_PARTITIONS` angeben, wenn Sie Parallelität in Spark nutzen möchten. Mit diesen Parametern wird die ursprüngliche Abfrage in `NUM_PARTITIONS` Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.
+ `PARTITION_FIELD`: der Name des Feldes, das zur Partitionierung der Abfrage verwendet werden soll.
+ `LOWER_BOUND`: ein **inklusiver** Untergrenzwert des ausgewählten Partitionsfelds.

  Für das Timestamp-Feld akzeptieren wir das Spark-Zeitstempelformat, das in Spark-SQL-Abfragen verwendet wird.

  Beispiele für gültige Werte:

  ```
  "TIMESTAMP \"1707256978123\""
  "TIMESTAMP \"1702600882\""
  "TIMESTAMP '2024-02-06T22:00:00:00.000Z'"
  "TIMESTAMP '2024-02-06T22:00:00:00Z'"
  "TIMESTAMP '2024-02-06'"
  ```
+ `UPPER_BOUND`: ein **exklusiver** Obergrenzwert des ausgewählten Partitionsfelds.
+ `NUM_PARTITIONS`: Die Anzahl an Partitionen.

Beispiel:

```
netsuiteerp_read = glueContext.create_dynamic_frame.from_options(
    connection_type="netsuiteerp",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "deposit",
        "API_VERSION": "v1",
        "PARTITION_FIELD": "id",
        "LOWER_BOUND": "1",
        "UPPER_BOUND": "10000",
        "NUM_PARTITIONS": "10"
    }
```

**Datensatzbasierte Partitionierung**

Sie können die zusätzlichen Spark-Option `NUM_PARTITIONS` angeben, wenn Sie Parallelität in Spark nutzen möchten. Mit diesem Parameter würde die ursprüngliche Abfrage in `NUM_PARTITIONS` Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.

Bei der datensatzbasierten Partitionierung wird die Gesamtzahl der vorhandenen Datensätze von der NetSuite Oracle-API abgefragt und durch die angegebene `NUM_PARTITIONS` Zahl dividiert. Die resultierende Anzahl von Datensätzen wird dann gleichzeitig von jeder Unterabfrage abgerufen.
+ `NUM_PARTITIONS`: Die Anzahl an Partitionen.

Beispiel:

```
netsuiteerp_read = glueContext.create_dynamic_frame.from_options(
    connection_type="netsuiteerp",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "deposit",
        "API_VERSION": "v1",
        "NUM_PARTITIONS": "3"
    }
```