Definere Flex-forretningsregelsetninger og -prosedyrer

Definer Flex SQL-setninger for å definere valideringsregler som er spesifikke for din organisasjon. Du kan sette opp én eller flere setninger som skal behandles for etterinnsettings- eller etteroppdateringshendelser.

Flex SQL-behandling støtter setninger for dataspørringer (select) og datamanipulering (insert, update og delete). Bruk select-setninger for å utføre tilstandskontroll.

Store og små bokstaver er tillatt i SQL-setningen. Radidentifikatortokenet må imidlertid være enten bare store eller bare små bokstaver (f.eks. :ROWID eller :rowid).

Hver Flex SQL-setning krever bruk av et forhåndsdefinert :ROWID-token. Dette tokenet refererer til databaseradidentifikatoren for posten som behandles i den angitte tabellen. Setningen utføres for hver post i tabellen som påvirkes av innsettings- eller oppdateringsoperasjonen.

Maks. setningslengde er 4000 tegn. Ingen setningsavslutningstegn (;) er nødvendig.

Datamanipuleringssetninger er tillatt, men pass på at du ikke starter en uendelig overlapping av utløsertrinn. Det anbefales f.eks. vanligvis ikke å opprette en Flex SQL-setning som oppdaterer basistabellen som er identifisert i Tabell.

Merk

Infor anbefaler at du definerer Flex SQL-prosedyrer i nært samarbeid med Infor EAM-konsulenten din.

  1. Velg Administrasjon > Skjermbildekonfigurering > Flex-forretningsregler.
  2. Spesifiser den Tabell som det skal defineres Flex SQL-setninger og -prosedyrer for.
  3. Klikk på Legg til Flex SQL.
  4. Spesifiser denne informasjonen:
    Rekkefølgenummer
    Spesifiser rekkefølgen for Flex SQL-prosessering.
    Trigger
    Spesifiser databaseoperasjonen som skal initiere hendelsen. Triggere etter-innsetting og etter-oppdatering støttes.
    SQL-setning
    Spesifiser SQL-setningen som skal utføres når den angitte operasjonen finner sted for en tabell.
    Feilmelding
    Spesifiser meldingen som skal vises når Flex SQL-setningen mislykkes. En Flex SQL-setning er vellykket når setningen prosesserer én eller flere rader i en tabell. En Flex SQL-setning mislykkes når ingen rader blir prosessert. For å gjøre feilmeldingen aktiv velger du Avbryt ved feil.
    Kommentarer
    Spesifiser en beskrivelse av formålet med Flex SQL-setningen.
  5. Du kan også eventuelt velge avmerkingsboksen Må eksistere for å få Flex SQL-prosessoren til å slutte å prosessere påfølgende Flex SQL-setninger når den gjeldende ikke prosesserer noen rader.
  6. Du kan også eventuelt merke av i avmerkingsboksen Avbryt ved feil for å stoppe den pågående operasjonen når den feiler og utsteder et feilvarsel.
  7. Eventuelt kan du merke av i avmerkingsboksen Reverser returkoden for å reversere returstatuskoden for den aktuelle Flex SQL-setningen. Hvis dette velges og setningen prosesserer én eller flere rader, svarer prosessoren med en feilstatus. Hvis setningen ikke prosesserer noen rader, vil prosessoren svare med en suksesstatus.
  8. Du kan også eventuelt merke av i avmerkingsboksen Aktiv for å aktivere Flex SQL-setningen.
  9. Klikk på Test Flex SQL for å kontrollere at den aktuelle Flex SQL-setningen er gyldig. Hvis setningen inneholder feil (f.eks. ugyldig syntaks), vises en melding.
  10. Klikk på Send.
    Se følgende eksempler på Flex SQL-definisjoner:
    Eksempel 1
    Spesifiser kontrollsetninger eller redigeringer som supplerer standard Infor EAM-prosessering. Det er f.eks. valgfritt å angi en verdi for kostnadskode når du oppretter en rekvisisjon i Infor EAM. Dersom implementeringen avhenger av bruk av kostnadskode for å utlede kontosegmentverdier, må du definere en kontrollsetning som ikke tillater oppdatering eller innsetting av rekvisisjoner uten å angi en verdi for kostnadskode.

    Se følgende eksempel på en kontrollsetning som supplerer standardprosesseringen av opprettelsen av en rekvisisjon i Infor EAM:

    • Tabell
      Spesifiser R5REQUISITIONS.
    • Trigger
      Spesifiser POST-INSERT.
    • Rekkefølgenummer
      Spesifiser 10.
    • SQL-setning
      Spesifiser følgende SQL-setning som skal utføres:
                           SELECT NULL
                           FROM R5REQUISITIONS
                           WHERE ROWID=:ROWID
                           AND REQ_COSTCODE IS NOT NULL
    • Feilmelding
      Spesifiser Legg inn en verdi for kostnadskode.
    • Velg Må eksistere.
    • Velg Avbryt ved feil.
    Eksempel 2
    Opprett rader for oppføringer og transaksjoner til grensesnittet med Oracle Financials i R5ACCOUNTDETAIL-tabellen i Infor EAMFlex SQL-skjemaet.

    Se følgende eksempel på å opprette rader for oppføringer med kontoopplysninger ved hjelp av konstante standardverdier. Denne setningen følger kontrollsetningen i forrige eksempel for å angi verdier for kostnadskode når du oppretter rekvisisjoner. Sekvensnummeret identifiserer rekkefølgen som Flex SQL-setninger utføres i.

    • Tabell
      Spesifiser R5REQUISITIONS.
    • Trigger
      Spesifiser POST-INSERT.
    • Rekkefølgenummer
      Spesifiser 20.
    • SQL-setning
      Spesifiser følgende SQL-setning som skal utføres:
                           INSERT INTO R5ACCOUNTDETAIL
                           (ACD_CODE, ACD_RENTITY, ACD_SEGMENT1, ACD_SEGMENT2, ACD_SEGMENT3,
                           ACD_SEGMENT4)
                           SELECT REQ_ACD, 'REQ',
                           '01',
                           '000',
                           '000',
                           '0000'
                           FROM R5REQUISITIONS                      
                           WHERE ROWID=:ROWID
      
    • Feilmelding
      Spesifiser Feil ved oppretting av kontoopplysning.
    • Velg Må eksistere.
    • Velg Avbryt ved feil.
    • Velg Aktiv.

    Eksempelet ovenfor illustrerer rekvisisjonsreferansen til R5ACCOUNTDETAIL som REQ_ACD allerede er lagt inn for. Infor EAM genererer automatisk rekvisisjonskontonøkkelen. Du trenger ikke å opprette en kontonøkkelverdi med Flex SQL.

    Flex SQL-setningsdefinisjoner som skal brukes i Infor EAM for kontoopplysninger avhenger av hvilkeInfor EAM – og ERP-moduler som er integrert. Begynn med å skissere hele innkjøpsprosessen. Jobb deretter med hvert transaksjonssett for å avgjøre behovet for validering og generering av regnskap. Disse behovene er unike ikke bare for hvert integrasjonsscenario, men også for hver kunde i enhver situasjon. Derfor er det ekstremt viktig å sørge for at du har vurdert hele prosessen svært nøye.