Só pra dar uma idéia do que vém por aí........
A nova configuração, sem setup ainda.
Código: Selecionar todos
USE ( cFile )
aStru := dbStruct()
FOR EACH aField IN aStru
AAdd( aAllSetup, { cFile, aField[ DBS_NAME ], aField[ DBS_TYPE ], ;
aField[ DBS_LEN ], aField[ DBS_DEC ], aField[ DBS_NAME ], ;
"", "", "", "" } )
DO CASE
CASE ! cFile == "ACCOUNT"
CASE aField[ DBS_NAME ] == "IDPRODUCT"
ATail( aAllSetup )[ 7 ] := "PRODUCT"
ATail( aAllSetup )[ 8 ] := "IDPRODUCT"
ATail( aAllSetup )[ 9 ] := "NAME"
CASE aField[ DBS_NAME ] == "IDPEOPLE"
ATail( aAllSetup )[ 7 ] := "PEOPLE"
ATail( aAllSetup )[ 8 ] := "IDPEOPLE"
ATail( aAllSetup )[ 9 ] := "NAME"
ENDCASE
NEXT
USE
Na tela de account, vai pesquisar o produto e trazer descrição, e pesquisar o cliente e trazer descrição.....
Em andamento, ainda estou aprendendo.
Ainda é minha primeira tela, multiplicada por milhares, mas é minha primeira tela ainda.
Pois é... mais de um ano pra fazer uma simples tela....
Por isso uso essa coisa de criar várias telas... nem é pra usar... é só pra tirar essa sensação de não ter saído da primeira tela.
Ao invés da sensação de.... não criei nem a primeira, e ainda faltam 999...
Fica a sensação de.... só falta mais um negocinho... e o aplicativo tá quase pronto...
É só por isso mesmo.
De resto:
- uma criação de dialog
- uma criação de get
- uma criação de say
- uma criação de tab
- uma criação de page
- uma criação de panel
- somar linha/coluna, e quebrar página igual qualquer relatório
É coisa que todo mundo sabe fazer, e faz o tempo todo.
Talvez o destaque seja o uso de codeblock. Se não construir direito, ele não faz o que a gente pensa.