Uppdelning av värdet av ett alfanumeriskt fält vid en specifik karaktär i Crystal Reports är ganska okomplicerad . Utgångspunkten är att dela upp området i två delar vid den numeriska positionen för det önskade tecknet . Vi kan fånga varje del värde i en separat formel med hjälp av de inbyggda sträng funktioner . Den första delen kommer att fånga fälten första positionen till den delningen . Den andra delen kommer capturefrom split position +1 till den sista positionen . Saker du behöver
Crystal Reports
Visa fler instruktioner
1
Öppna en ny formel och definiera strängvariabler . Obs : //definiera kommentarer
STRINGVAR s: = ' abcdefghijklmnopqrstuvwxyz ' , //s = konstant eller databas fältvärde
STRINGVAR c : = ' m ' , //c = något tecken i s för att definiera delningen
numberVar L : = längd ( s ) , //L = längd s ( aka : sista positionen ) katalog
numberVar i : = instr ( s , c ) , //i = numeriskt fält position c (ex : m = 13 )
2
Efter variablerna Step1 , definierar den första splittringen delen med hjälp av variabler som argument i de inbyggda Strängfunktioner .
//mitten tar string ( er ) från den numeriska startpositionen ( 1 ) till slutposition ( i) .
mid ( s , 1 , i)
Sida 3
Efter variablerna Step1 , definierar den andra delade delen med hjälp av variabler som argument i den inbyggda Strängfunktioner .
//mitten tar string ( er ) från den numeriska startpositionen ( i +1 ) till slutposition ( L ) .
mid ( s , i +1 , L )
4
Bestäm hur du använder dina definierade split delar .
1 ) Visas som en vagn visade resultatet vid delningen
//CHR ( 13 ) är det ASCII för en vagnretur
mid (s, 1 , i) + chr ( 13 ) + mid ( s , i +1 , L ) katalog
2 ) Visas som två separata fält
- . namn formel till Part1 och namn en kopia som Part2
- Håll variabeldeklarationer i varje formel
- Keep mid ( s , 1 , i) för Part1
- Keep mid ( s , i +1 , L ) för Part2
- Placera Del 1 och Del 2 om rapporten självständigt Addera