Minha abordagem. O núcleo é o motor. - página 127

 
Vasiliy Sokolov:

Peter, sinto muito, mas seu trabalho não é aceito, pois o que você enviou é uma peça de hackwork.

...

Ainda sem crédito. Aguardando suas revisões. E nada de renderizações em 3D até que você descubra!

Por que você está maltratando o Peter? Ele é um artista livre - o que ele quiser, é o que ele faz. E se é complicado e não se encaixa em seu conceito de pensamento, então não é querido e não é feito, mas substituído por algo simples, querido e feito...

 
Artyom Trishkin:

Por que você está envergonhando Pyotr? Ele é um artista livre - o que ele quiser, é o que ele faz. E se é complicado e não cabe em sua concepção de pensamento - então não é querido e não feito, mas substituído por algo que é simples, querido e feito...

Mas ele (Pyotr) quer ser procurado com seu motor principal, recebendo ordens e assim por diante. Aqui Vassily lhe deu um pequeno toque de realidade.

E, Pyotr, que tal o painel para Alexander?

 
Artyom Trishkin:

Por que você está maltratando o Peter? Ele é um artista livre - o que quer que ele queira fazer, é o que ele faz. E se é complicado e não se encaixa em sua concepção de pensamento, ele não quer fazê-lo, mas substitui o que simplesmente quer fazer...

Nossa, eu sinto seu olhar manhoso :)

Estou batendo porque o homem se levantou e declarou que qualquer um pode criar uma interface gráfica para seu programa com base em sua solução. Ele se ofereceu para provar isso e se ofereceu para verificar ele mesmo sua solução. Eu verifiquei e o resultado foi um pesadelo total. Então, como dizem, se você se diz cavaleiro, entre no caminhão;)

 
Há uma grande diferença entre a solução de problemas imaginários e tarefas específicas de terceiros. Foi declarado que este motor é apenas para o segundo caso. Para oferecer uma solução eficaz e universal a este segundo caso, a solução deve ser baseada em paradigmas básicos de programação. Até agora, não vejo a implementação correta destes paradigmas na solução de Peter. Pelo contrário, o problema "simples" especialmente formulado expôs todo o emaranhado de problemas internos e a completa escuridão de toda a solução proposta.
 
Vasiliy Sokolov:
Há uma grande diferença entre a solução de problemas imaginários e tarefas específicas de terceiros. Foi declarado que este motor é apenas para o segundo caso. A fim de proporcionar uma solução eficaz e universal para este segundo caso, é necessário que a solução seja baseada em paradigmas básicos de programação. Até agora, não vejo uma implementação correta destes paradigmas na solução de Peter. Pelo contrário, o problema "simples" especialmente formulado expôs todo o emaranhado de problemas internos e a completa escuridão de toda a solução proposta.

Bem, você é um mestre do exagero...

Todos esses "problemas", são resolvidos de uma só vez. Eu acabei de fazer a tecnologia, e não havia ninguém com quem testá-la. E você é aquele que tem uma espada na mão...)

Tudo isso é um absurdo, exceto talvez para limitar o número de filas. Eu ainda não consegui resolver isso.


Os pedidos não são fechados, porque esqueci como verificar se um pedido está aberto ou fechado. E você criou uma "tragédia")).

 
Реter Konow:
Os pedidos não fecham porque esqueci como verificar se um pedido está aberto ou fechado. E você criou uma "tragédia")).

PositionSelectByTicket

 
Konstantin Nikitin:

PositionSelectByTicket

Obrigado.))

Há uma antiga tragédia grega ocorrendo aqui...)) É até engraçado que ele não entenda como é fácil resolver todos os problemas que ele declarou. Todos, exceto um número ilimitado de linhas de tabela.

 
Реter Konow:

Bem, você é um mestre do exagero...

...

Cara, cara, você realmente não entende o que está acontecendo ou está tentando cortar os cantos dessa maneira?

Em qualquer painel, o fundamental e o mais difícil é a exibição da consistência. Se um pedido estiver aberto - deve ser exibido, se não estiver na guia comercial, também não deve estar no painel. Isto é elementar e "muito simples" conceitualmente. Mas para que seja "muito simples", o painel precisa ser baseado em um modelo estatal. Você não tem tal coisa, mas algum banco de dados local de curvas não consistentes em cordas enfiadas em objetos do usuário:

E aqui você está agora tentando nos provar que não há problema, que tudo foi sugado do nada. Que os pedidos que não podem ser exibidos em sua mesa estão bem. Que as ordens que estão em sua mesa, mas que há muito tempo estão fechadas de fato, também são normais. E em geral, tudo é tão normal e bom, exceto que o número de posições é limitado a 20.

 
Vasiliy Sokolov:

Vou esclarecer a tarefa mais uma vez, para que não haja dúvidas:

  1. A tabela é dinâmica e mostra as mesmas ordens que na guia Comércio. Se não houver pedidos na guia, sua mesa também não os mostra.
  2. O número das ordens exibidas em sua mesa deve ser qualquer coisa. Não há limitações vindas de cima.
  3. A abertura de um pedido através da janela de diálogo padrão deve fazer com que o pedido apareça em sua mesa. O fechamento do pedido por meios padrão deve resultar no desaparecimento do pedido em sua mesa.
  4. Um estado não consistente não é aceitável! Se sua mesa mostra uma coisa, e a aba Trade mostra outra, isto é um erro.

Por enquanto, tenho que lhe dar um salto grosso. Estamos esperando que você conserte. E nada de renderizações em 3D até que você descubra!

  1. Para fazer isso, o usuário deve escrever um laço nas ordens em carrapatos ou cronômetros, e verificar seus carrapatos com os carrapatos escritos na matriz. Se não houver bilhete na matriz, isso significa que a ordem foi apenas aberta, e então o E_Main_form_1__PnL(OrderTicket(),OrderProfit()) deve ser chamado;
  2. Esta questão é tecnicamente muito complicada. Até agora, o número de filas é limitado com antecedência. Mas pode ser muito mais do que 20. Podemos fazer até 200.
  3. O fechamento do pedido através da janela padrão, assim como na abertura, será fixado no laço no tick ou no evento do timer. E se houver um bilhete no conjunto de pedidos em aberto que não existe mais, você precisa chamar o
    E_Main_form_1_CLOSE_ROW___Orders_table(ticket);
    

4. Se estes laços de ordem forem escritos corretamente, a tabela funcionará corretamente.

Simplesmente esqueci como lidar corretamente com as ordens, por isso não implementei este mecanismo corretamente. Portanto, a tabela não funcionou corretamente.

Mas isto não significa que a mesa dinâmica em si não funcione.

 
Реter Konow:

Obrigado.))

Há uma antiga tragédia grega acontecendo aqui...) É até engraçado que ele não entenda como é fácil resolver todos os problemas que ele afirmou. Todos, exceto um número ilimitado de linhas de tabela.

Eu apenas sinto uma grande pilha de negligência em você, em seu código e em tudo o que você faz, mais ou menos para as pessoas, mas assim que chega a um ponto específico, começam as besteiras. Faça uma coisa que seja pequena mas boa e de alta qualidade. Portanto, você diz que tudo é fácil de resolver, elementar. Mas por alguma razão você fez uma solução, na qual não há nada. O que o impediu de fazer todas essas simples fichas em uma quinzena?

Desculpe pelo negativismo. É que você me decepcionou. Eu esperava ver mais e melhor. Por favor, conserte sua demonstração. Torná-lo bom, de alta qualidade, de acordo com o pedido e sem estes "é elementar, precisa de um ajuste aqui". Oferecer uma solução fora da caixa, que poderia ser protestada.