segunda-feira, junho 13, 2005

EAPs

Malta, é assim: meti agora no repositório o EAP do projecto pronto para ser usado como "master", isto é: vocês sacam o ficheiro "Replica.EAP" (vem qdo fizerem update) e trabalham em cima dele. Depois, podem adicionar esse ficheiro ao repositorio (façam um rename, sff, para algo q identifique esse novo ficheiro como sendo do vosso "grupo"; algo como "Replica-Arquitectura.EAP" ou isso). Assim, amanhã (terça), é só irmos buscar todas essas replicas e fazermos uma sincronização com a master (o Projecto.EAP), sem termos o risco de andarmos a perder partes dos vários modelos.

Lembrem-se:
1- sacar o ficheiro "Replica.EAP"
2- fazer rename para algo "legível" (q identifique o vosso grupo/pedaço do domínio/etc)
3- meter no repositorio SVN
4- trabalhar apenas em cima do novo ficheiro.

(Telmo: é aquela cena de q falámos com o Gonçalo Gaiolas, se te lembras)

JS

domingo, junho 12, 2005

Malta, eu sei que já é um "bocadito tarde" :P para esta, mas só agora é q se me deparou este problema e ninguém me lembrou/avisou/alertou/etc para este:

É assim, vocês qdo chamam um serviço normalmente devolvem um ObjectContainer, para poderem trabalhar com os objectos "desligados" da BD. Ora, o problema está em se vocês querem adicionar novos objectos à BD (ou quiserem mudar dados) ... Adicionam-nos ao ObjectContainer; e o que acontece a seguir?
Se não fizerem o "playback" do ObjectContainer para a BD, acabam por perder essas mudanças/adições. Portanto, é assim: eu vou agora fazer um serviço (ServicoGuardarObjectos) que vai receber um ObjectContainer (ao qual vocês adicionam objectos, removem objectos, alteram dados dos objectos, etc) e vai desbobinar o ObjCont para a BD. Vocês só têm que, no fim de cada WebForm/interacção/qq coisa que possa alterar esse ObjCont, chamar esse serviço.
Um exemplo disto é a criação de Operações (na Gestão de Obras). No caso de uso VisualizarOperações, não é preciso chamar esse serviço no fim da interacção, pq nada mudou no ObjCont de certeza. No caso de uso RealizarOperações, é preciso chamar esse serviço pq possivelmente temos novas operações adicionadas.

Se alguém não tiver percebido/tiver dúvidas, fale comigo.

JS

Mais alterações

Alterei o FillNewDatabase.asmx para ter lá também um webservice para limpar a BD. Pode dar jeito quando têm a BD muito pesada com dados que criaram para testar as vossas webforms.

Alterei também o Servico.cs (do modelo de domínio, não da camada de Serviços) para ter os atributos privados.

Não me estou a lembrar de mais nada, mas se houver algo eu aviso.

Qualquer coisa, perguntem-me.

Cumps
JS

quarta-feira, junho 08, 2005

Firewalls...

Já agora, para quem use firewalls da tanga (i.e., ZoneAlarm): têm que desligar a firewall quando estiverem a testar a aplicação, senão nunca mais saem do ecran de login...

JS

FAQ

Meti uma FAQ online. Está em http://ottawa.inesc.pt/PFSI/ , na dir Projecto. Está a ser actualizada...

JS

Já agora, visto que o Telmo me esteve a perguntar, e a dúvida tem a sua razão de ser:

Vejam se nas vossa Path do sistema (vão a System->tab Advanced->Environment Variables->System Variables->Path) têm lá as duas entradas seguintes:

C:\Programming\FastObjects_.NET_Trial\runtime\bin e C:\Programming\FastObjects_.NET_Trial\bin (adaptem isto para a dir. onde instalaram o FastObjects, claro...).

Se não tiverem lá isto, acrescentem. É porque isto é preciso para o ASP.NET encontrar umas dlls do FastObjects.

E, já agora, isto dependendo da maneira como o vosso SO atribui as permissões por omissão, mas de qq modo façam isto: seleccionem as directorias ProjectoJupiterBase e ProjectoJupiterDic e vão às propriedades delas. Vão à tab Security, carreguem em Add, escrevam na caixa de texto grandalhona "ASPNET" e façam Check Names. Se ele completar aquilo com o nome do vosso computador, etc. tudo bem (algo do género OTTAWA\ASPNET ), então estão no bom caminho. Façam OK. Seleccionem o user que adicionaram (ASPNET), e seleccionem a checkbox que diz Full Control (na coluna do Allow). E pronto. Isto foi só para deixarem o ASP.NET aceder à BD. Pus isto aqui pq no meu portatil nao houve problema com isto, mas aqui no Ottawa deu...

JS

terça-feira, junho 07, 2005

Mais alguma coisa...

Como está no log do SVN:

O login já está feito.

Vejam exemplos no form de login e no form PaginaInicial.aspx (vai ser apagado daqui a pouco tempo).

Já trata bem os casos de expiração da sessão.
Têm é que, no Page_Load de cada WebForm q criem, meter uma chamada a "Utilities.VeSeHaUtilizadorLogado(this);" . Chato, eu sei, mas não consegui meter uns handlers aqui a funcionar, portanto tem mesmo q ir assim.

Já agora, esqueci-me de vos dizer ontem: se quiserem mexer em objectos carregados da BD (para leitura e/ou para escrita) têm que meter aquilo dentro de um ObjectContainer (como eu fiz no ServicoAutenticar.cs, vejam lá como fiz) e depois acedem a isso. De qq modo, têm essa documentação toda com o FastObjects, como vos mostrei ontem.

Modelo de domínio

Adicionei o modelo de domínio.

Visto q a porra do EA não gera getters/setters (mas que grande ferramenta isto nos saiu...) e mete os atributos como public (way to go...), agradecia que, à medida que vocês precisassem de aceder a atributos nas classes, fossem alterando isso (metendo o atributo como private e adicionando getter/setter protected ou public, dependendo do contexto).

Fiz agora o serviço de autenticação. Criei também um Empregado com username="admin" e password="admin" . Têm também o Login.aspx a invocar o serviço de autenticação. Podem usar tudo isto como exemplo.
Para mais detalhes, vejam o log no svn.

JS

quarta-feira, maio 25, 2005

BD a bombar fine por aqui

Malta, era só para dizer que a BD finalmente está a bombar bem, pelo menos aqui por estes lados.

Já agora, a versão Trial é "algo" (_bastante_) limitada, pelo que têm que ter o FastObjects instalado em cada computador em que estejam a desenvolver. :-( C'est la vie...

E têm que alterar o ficheiro FastObjects.cfg (na raiz do nosso projecto - ProjectoJupiter/ProjectoJupiter ), para reflectir a localização da directoria do projecto (e, consequentemente, a BD) no vosso computador. Têm tb q alterar o ficheiro Servico/ObjectScopeProvider.cs para reflectir a localização do ficheiro FastObjects.cfg no vosso computador.
Em suma, é só alterar esses 2 ficheiros para corrigirem as directorias :-) .

Já agora, posso considerar definitivo o modelo de domínio que está no repositório? É que preciso disso para começar a fazer algumas cenas, para vocês poderem começar a bombar nisto a sério...

Cumps
JS

P.S.: Quando começarem a ter problema em aceder à BD, matem o processo do ASP.NET . Trust me.

terça-feira, maio 24, 2005

Malta, não falta nada...?

O título diz tudo. Segundo o SVN, ninguém alterou o modelo de domínio. Não se esqueçam de meter atributos, corrigir problemas, etc.

Entretanto, eu vou gerar o código e começar a fazer uns testes preliminares com isto.

Vá, eu sei que é chato... mas tentem ter uma versão final disto o mais rápido possível, ok?

Entretanto, eu tb vou ver se trabalho um pouco mais nisto... a ver se meto a BD a funcionar.

Cumps
JS

quinta-feira, maio 19, 2005

Mais coisas...

Malta, meti agora online os ficheiros de instalacao e etc do FastObjects. Para o usarem nos computadores onde tenham que fazer o vosso desenvolvimento, vão ter que o instalar mesmo. Sorry :( Vejam nas instruções o que fazer. Se alguém não conseguir abrir o .msg (copiei-o directamente do Outlook), diga-me para eu o meter num .txt .
E isto tudo para vos dizer isto: http://ottawa.inesc.pt/PFSI_FicheirosInstalacao

Meti também uma versão preliminar do serviço geral. Enquanto não tivermos o modelo de domínio a bulir, é o melhor que posso fazer.

Cumps
JS